docker-compose 是一款开源的docker 简化复杂容器环境的管理工具 。
docker-compose 在结合Swarm 与 docker 进程化容器部署可以很方便的部署一套环境。
具体的流程如下:
docker-compose v2 版本 的使用
官方文档:
https://docs.docker.com/compose/compose-file/#version-2
docker-compose 是用 python 写的,所以我们安装
使用 pip install docker-compose 来 安装 docker-compose
升级 ssl_match_hostname 大于等于3.5.1 版本,才能使用 docker-compose
pip install backports.ssl_match_hostname --upgrade
以下是 V2 版本的 docker-compose.yaml
version: '2' # 使用compose v2 版本
networks: # 定义一个网络
network-cn: # 定义网络名称
external:
name: ovrcn # 使用自行创建的网络,如果不设置这个,会自动创建一个别的网络,与你原来网络不在一个网络中。
services: # 服务组名称
nginx-1:
image: nginx # 镜像
networks:
network-cn: # 自定义的网络名
aliases:
- nginx # overlay 网络的网络别名
hostname: nginx # 容器里面的 hostname
container_name: nginx-1 # 创建容器时的容器名称
ports: # 映射端口
- "80:80"
- "443:443"
environment: # --env 配置
- constraint:node==swarm-node-28
volumes: # 挂载目录
- /opt/data/nginx/logs:/opt/local/nginx/logs
编写完 docker-compose.yaml 使用 docker-compose up -d 来创建 容器。
使用 docker-compose ps 命令可以查看 容器的启动情况。
Name Command State Ports
-----------------------------------------------------------------------------------
nginx-1 /opt/local/nginx/sbin/ngin ... Up 172.16.1.28:443->443/tcp, 172.16.1.28:80->80/tcp