Docker系列八:docker-compose容器编排

目录

一:安装docker-compose

二:编写docker-compose.yml

三:docker-compose常用命令

# 启动应用

# 停止应用(会删除服务资源-不删除卷)

# 删除所有(停止状态的)服务容器

# 启动已经存在的服务容器

# 停止已经处于运行状态的容器,但不删除它

# 重启项目中的服务

# 查看docker-compose对应服务(容器)的状态

# 列出服务(容器)内运行的进程

# 启动单个容器

# 指定yml文件启动容器

Compose 和 Docker 兼容性


一:安装docker-compose

Version 1.18.0 or higher

Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:Releases · docker/compose · GitHub

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
如果github太慢使用daocloud
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
注:要安装其他版本的 Compose,请替换 1.24.1。

将可执行权限应用于二进制文件:
$ sudo chmod +x /usr/local/bin/docker-compose

创建软链:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

测试是否安装成功:
$ docker-compose --version
    docker-compose version 1.24.1, build 4667896b
    
卸载docker-compose
sudo rm /usr/local/bin/docker-compose

二:编写docker-compose.yml

参考官网:https://yeasy.gitbook.io/docker_practice/compose/commands

version: '3'   # 描述compose文件格式版本
services:
  php:         # 服务名称 - 可以通过它单独启动服务
    image: php:7.2-fpm         # 创建容器需要的镜像名
    container_name: picture_php   # 容器名称
    restart: always               # 容器重启策略,这里每次退出都重启
    privileged: true              # 允许容器中运行一些特权命令
    volumes:  # 数据卷挂载,可以设置宿主机路径或数据卷名称--不同版本写法有区别
      - /home/python/py_picture/html:/usr/share/nginx/html
      - /home/python/py_picture/build_image/php7/php-fpm.conf:/usr/local/etc/php-fpm.conf:ro
      - /home/python/py_picture/build_image/php7/php-fpm.d:/usr/local/etc/php-fpm.d
      #- type: bind
      #  source: /home/python/py_picture/build_image/php7/php-fpm.conf
      #  target: /usr/local/etc/php-fpm.conf
      #  read_only: true
    ports:                       # 宿主机:容器端口映射关系
      - 9009:9000
    environment: # 创建容器时所需的环境变量
        Version: 1
    networks:                    # 配置容器链接的网络
      - py_picture

  web:
    image: nginx:1.14.0-alpine
    container_name: picture_nginx
    restart: always
    privileged: true
    volumes:
      - /home/python/py_picture/html:/usr/share/nginx/html
      - /home/python/py_picture/build_image/nginx_v2/conf.d:/etc/nginx/conf.d:ro
      - /home/python/py_picture/build_image/nginx_v2/log:/var/log/nginx
    ports:
      - 90:80
    networks:
      - py_picture

# 定义网络可以多个
networks:
  py_picture:
    external: true

三:docker-compose常用命令

# 启动应用

docker-compose up

# 停止应用(会删除服务资源-不删除卷)

docker-compose down

# 删除所有(停止状态的)服务容器

docker-compose rm 推荐先执行 docker-compose stop 命令来停止容器

# 启动已经存在的服务容器

docker-compose start

# 停止已经处于运行状态的容器,但不删除它

docker-compose

# 重启项目中的服务

docker-compose restart

# 查看docker-compose对应服务(容器)的状态

docker-compose ps

# 列出服务(容器)内运行的进程

docker-compose top

# 启动单个容器

docker-compose -f public-compose.yml up web
    -> web是服务名称

# 指定yml文件启动容器

docker-compose -f 具体的docker-compose.yml up -d
    -> -d:后台模式启动

Compose 和 Docker 兼容性

编写文件格式

Docker 引擎

撰写规范

19.03.0+

3.8

19.03.0+

3.7

18.06.0+

3.6

18.02.0+

3.5

17.12.0+

3.4

17.09.0+

3.3

17.06.0+

3.2

17.04.0+

3.1

1.13.1+

3.0

1.13.0+

2.4

17.12.0+

2.3

17.06.0+

2.2

1.13.0+

2.1

1.12.0+

2.0

1.10.0+

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iwester

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值