本站所有文章均为原创,如对您有帮助,恳请帮忙点击任何一处广告
  • 首页
  • Docker
  • Docker运维教程(11)单机版容器编排工具compose

Docker运维教程(11)单机版容器编排工具compose

发布:TangLu2019-11-14 17:02分类: Docker 标签: docker dockerfile

一、什么是Docker Compose

它是一款容器编排工具,解决了Dockerfile一次只能管理一个容器的问题,使用compose可以一次管理多个容器,适合多个容器组合使用的场景,比如Harbor仓库就是使用Docker Compose进行管理。之所以称compose为单机版编排工具是因为它无法跨宿主机工作。


二、安装和配置Docker Compose

1、安装Docker Compose

yum install docker-compose

2、Docker Compose文件编写

Compose和Dockerfile一样也有一个yaml文件作为配置文件,文件名需要命名为docker-compose.yaml。如果文件路径为/docker/docker-compose.yaml,那么容器的名字都会自动加上上级目录名为前缀,比如docker_centos_latest。可以参考官方给出的compose示例:https://docs.docker.com/compose/compose-file/

version: "3.7"
services:  #在compose中每一个容器都定义为一个services

  redis:  #为服务命名,进行扩容或其他管理操作需要用到这个名字
    image: redis:alpine  #从指定的这个镜像启动容器
    ports:  #端口 映射
      - "6379"
    networks:
      - frontend
    deploy:  #指定与部署和运行服务相关的配置
      replicas: 2  #指定运行容器的数量,形成集群
      update_config:  #配置更新服务,用于无缝更新
        parallelism: 2  #一次更新容器的数量
        delay: 10s  #更新一组容器的等待时间
      restart_policy:  #重启策略
        condition: on-failure

  db:
    image: postgres:9.4
    volumes:
      - db-data:/var/lib/postgresql/data
    networks:
      - backend
    deploy:
      placement:
        constraints: [node.role == manager]

  vote:
    image: dockersamples/examplevotingapp_vote:before
    ports:
      - "5000:80"
    networks:
      - frontend
    depends_on:
      - redis
    deploy:
      replicas: 2
      update_config:
        parallelism: 2
      restart_policy:
        condition: on-failure

  worker:
    image: dockersamples/examplevotingapp_worker
    networks:
      - frontend
      - backend
    deploy:
      mode: replicated
      replicas: 1
      labels: [APP=VOTING]
      restart_policy:
        condition: on-failure
        delay: 10s
        max_attempts: 3
        window: 120s
      placement:
        constraints: [node.role == manager]

  visualizer:
    image: dockersamples/visualizer:stable
    ports:
      - "8080:8080"
    stop_grace_period: 1m30s
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
    deploy:
      placement:
        constraints: [node.role == manager]

三、Docker Compose常用管理命令

docker-compose up -d  #创建并后台启动compose中的所有容器
docker-compose down  #停止并删除容器
docker-compose restart  #重启容器
docker-compose stop  #是停止所有容器
docker-compose ps 
docker-compose kill


温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!
et_highlighter51
版权所有:《Linux运维技术学习站点
文章标题:《Docker运维教程(11)单机版容器编排工具compose
除非注明,文章均为 《Linux运维技术学习站点》 原创
转载请注明本文短网址:http://www.linuxe.cn/post-534.html  [生成短网址]

已有 0/173 人参与

发表评论:

欢迎分享Linux运维技术学习站点

欢迎使用手机扫描访问本站,还可以关注微信哦~