博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringCloud-基础设施即服务day5-DockerCompose
阅读量:3926 次
发布时间:2019-05-23

本文共 2122 字,大约阅读时间需要 7 分钟。

什么是DockerCompose

docker Compose是Docker编排的项目之一,负责快速的部署分布式应用
是官方的开源项目,负责实现对Docker容器集群的快速编排,从功能上面看,跟openStack之间的heat十分类似
compose的定位是定义和运行多个Docker容器的应用,其前身是开源项目Fig
它允许用户通过一个单独的docker-compose.yml模块文件来定义一组相关联的的应用容器为一个项目,compose里面有两个重要的概念
服务:一个应用的容器,实际上可以包含若干个运行相同实例的容器实例
项目:由一组关连的应用容器组成的一个完整的业务单元,在docker-compose.yml中间定义
compose的默认管理对象是项目,通过子命令对项目中的一组容器进行便捷的生命周期管理
安装和卸载
可以通过python的包管理工具pip进行安装
命令安装
输入以下命令

sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

在这里插入图片描述

授权
chmod +x docker-compose
在这里插入图片描述
docker-compose基本使用
场景
最常见的是web网站,该项目包含web应用和缓存
使用
编写docker-compose.yml文件,这是compose使用的主板文件
在这里插入图片描述
docker-compose.yml

version: '3'services:  tomcat:    restart: always    image: tomcat    container_name: tomcat    ports:        - 8080:8080

启动 docker-compose up 没有镜像时候会自动下载

以守护态运行 docker-compose -d

删除 docker-compose down

部署项目到容器

在/urs/local/项目创建文件夹 myblog

tan@ubuntu:/usr/local/docker$ mkdir bolg

vi docker-compose.yml

version: '3'services:  web:    restart: always    image: tomcat    container_name: web    ports:      - 8080:8080    volumes:      - /usr/local/docker/mybolg/ROOT:/usr/local/tomcat/webapps/ROOT  mysql:    restart: always    image: mysql:5.7.22    container_name: mysql    ports:      - 3306:3306    environment:      TZ: Asia/Shanghai      MYSQL_ROOT_PASSWORD: 123    command:      --character-set-server=utf8mb4      --collation-server=utf8mb4_general_ci      --explicit_defaults_for_timestamp=true      --lower_case_table_names=1      --max_allowed_packet=128M      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"    volumes:      - mysql-data:/var/lib/mysqlvolumes:  mysql-data:

运行

docker-compose up

将文件上传 /usr/local/docker/mybolg/ROOT
unzip解压 进入/usr/local/docker/mybolg/ROOT/WEB-INF/classes 修改数据库配置信息
docker-compose up 再次启动

配置文件语言yaml

YAML是用来专门写配置文件的语言,非常简洁和强大,远比json格式方便

基本语法规格

-大小写敏感

使用缩进表示成级关系
缩进时候不允许使用tab键,只允许使用空格
缩进的空格数目不重要,只要相同层级的元素左侧对齐就可以了
#表示注释、、

支持数据格式有三种,对象,数组,纯量

为什么json不适合做配置文件
缺乏注释
过于严格
低信噪比
长数据串
数字
json替代方案

HJSON

HOCON 为play框架设计的配置格式
YAML

转载地址:http://kikgn.baihongyu.com/

你可能感兴趣的文章
【BCVP】实现基于 Redis 的消息队列
查看>>
网络安全逐渐成为程序员的必备技能
查看>>
统信发布UOS V20 进军个人市场 生态日益完善
查看>>
BeetleX框架详解-小结
查看>>
拥抱.NET 5,从自研微服务框架开始
查看>>
C# 中的 is 真的是越来越强大,越来越语义化
查看>>
简单理解CAP-BASE
查看>>
gRPC-微服务间通信实践
查看>>
Firefox 18周岁
查看>>
IdentityServer4系列 | 初识基础知识点
查看>>
诊断日志知多少 | DiagnosticSource 在.NET上的应用
查看>>
Chrome正在启用HTTP/3,支持IETF QUIC
查看>>
Net5 已经来临,让我来送你一个成功
查看>>
System.Text.Json中时间格式化
查看>>
怎么将SVG转成PNG(.NET工具包编写)
查看>>
为什么曾经优秀的人突然变得平庸?
查看>>
.NET 5 中的隐藏特性
查看>>
.NET5都来了,你还不知道怎么部署到linux?最全部署方案,总有一款适合你
查看>>
我画着图,FluentAPI 她自己就生成了
查看>>
BenchmarkDotNet v0.12x新增功能
查看>>