赞
踩
Docker-Compose 用来实现Docker容器快速编排
COMPOSB_FILE
或 -f
参数自定义配置文件,其定义了多个有依赖关系的服务及每个服务运行的容器。[]
括起来, hash用花括号{}
括起来。使用 YAML时需要注意下面事项:
● 使用缩进表示层级关系,不支持制表符tab键缩进,只能使用空格键缩进;
● 缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级
● 通常开头缩进2个空格;
● 字符后缩进1个空格,如冒号:空格
逗号,空格
横杠-空格
文本之间的空格>
;
● 用#号注释;
● 如果包含特殊字符用单引号' '
引起来;
● 布尔值必须用引号" "
括起来;
● 区分大小写
● 字符串可以不用引号标注
YAML支持的数据结构:
# YAML表示
age : 12
name : huang
# 对应的Json表示
{'age':12,'name':'huang'}
使用连字符(-)表示:
# YAML表示
- a
- b
- 12
# 对应Json表示
['a','b',12]
version:指定此yml文件基于的compase的版本
services:指定创建容器的服务选项
networks:配置网络,指定网卡设备等
基本的使用格式
docker-compose [options] [COMMAND][ARGS...]
相关选项:
--verbose:输出更多调试信息
--version:打印版本并退出
-f:使用特定的compose模板文件,默认为docker-compose.yml
-p:指定项目名称,默认使用目录名称
Docker Compose 常用命令:
build | 重新构建服务 |
ps | 列出容器 |
up | 创建和启动容器 |
exec | 在容器里面执行命令 |
scale | 指定一个服务容器启动数量 |
top | 显示正在运行的容器进程 |
logs | 查看服务容器的输出 |
down | 删除容器、网络、数据卷和镜像 |
stop/start/restart | 停止/启动/重启服务 |
yum install -y tree
以部署Nginx服务为例:
比如工程目录 compose-nginx 下有:
先安装Docker yum install docker-ce -y
,我已经安装过了。
安装 Docker Compose。
#下载链接
curl -I https://github.com/docker/compose/releases/download/1.21.1/docker-compose-'uname -s'-'uname -m' -o
mv docker-compose /usr/local/bin/
#安装
chmod +x /usr/local/bin/docker-compose
#查看版本
docker-comoose --version
mkdir /opt/compose_nginx
cd /opt/compose_nginx
mkdir wwwroot
echo 'this is docker compose nginx text!' > wwwroot/index.html
mkdir nginx
vim /nginx/Dockerfile
将nginx软件包放在/opt/compose_nginx/nginx/下
cd /opt/compose_nginx
vim docker-compose.yml
#指定compose版本号 version: '3' #指定创建容器中的服务 services: #指定服务名 nginx: #定义容器主机名 hostname: nginx build: context: ./nginx #docker所在目录, dockerfile: Dockerfile #dockerfile 文件名,区分大小写 #暴露服务的端口 ports: - 1024:80 - 1025:443 networks: #属于哪个网络实例当中 - cluster #网络名字自定义,想要在同一网络,这里配置要一样 #挂载宿主机下的哪个逻辑卷 volumes: - ./wwwroot:/usr/local/nginx/html #将宿主机下的/wwwroot目录挂载到容器中的/usr/local/nginx/html目录 #mysql #php #定义全局网络名 networks : cluster: #同一编排的network值要一样
注意:执行 docker-compose 命令时,必须在 dicker-compose.yml 所在目录下执行。
docker-compose -f docker-compose.yml up -d
-f:指定compose模板文件
up:创建并启动容器
-d:在后台运行
docker ps -a #查看构建出的镜像
构建成功,可以看到指定的端口号 1024 暴露给80 端口、 1025暴露给443端口
或者用命令查看compose 构建出的容器:
docker-compose ps
文件结构:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。