Compose 的默认管理对象是服务栈,通过子命令对栈中的多个服务进行便捷的生命周期管理。

任务(task)

一个容器被称为一个任务。任务拥有独一无二的ID,在同一个服务中的多个任务序号依次递增。

服务(service)

某个相同应用镜像的容器副本集合,一个服务可以横向扩展为多个容器实例。

服务栈(stack)

由多个服务组成,相互配合完成特定业务,如 Web 应用服务、数据库服务共同构成 Web 服务栈,一般由一个 docker-compose.yml 文件定义。

安装 compose

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-composesudo chmod +x /usr/local/bin/docker-composesudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composedocker-compose --version

操作命令

构建项目中的服务容器

docker-compose  build --force-rm

校验和查看 compose 文件的配置信息

docker-compose config

停止服务栈

docker-compose down

列出服务所创建的镜像

docker-compose images

强制停止服务器

docker-compose kill

查看服务容器的输出

docker-compose logs

暂停一个服务容器

docker-compose pause

列出项目中目前的所有容器

docker-compose ps

拉取服务依赖的镜像

docker-compose pull

推送服务创建的镜像到镜像仓库

docker-compose push

重启项目中的服务

docker-compose restart

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

docker-compose stop

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

docker-compose rm -f

在指定容器上执行一个命令

docker-compose run  nginx echo "hello world"

设置指定服务运行的容器个数

docker-compose  scale nginx=6

启动已经存在的服务容器

docker-compose start

显示服务栈中正在运行的进程信息

docker-compose top

恢复处于暂停状态中的服务

docker-compose unpause

打印版本信息

docker-compose version

启动项目

docker-compose up -d

说明:

up 命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作

链接的服务都将会被自动启动,除非已经处于运行状态。

docker-compose.ym 配置

指定 Dockerfile 所在文件夹的路径

version: '3'services:app:build: /path/to/build/dir

覆盖容器启动后默认执行的命令

common: echo "hello world"

指定容器名称

container_name:docker-web-container

指定多个服务之间的依赖关系

depends_on:db

自定义 DNS 服务器

dns:8.8.8.8

配置 DNS 搜索域

dns_search:example.com

覆盖容器中默认的入口命令

entrypoint: python app.py

从文件中获取环境变量

env_file: .env

暴露端口,但不映射到宿主机,只被连接的服务访问

expose:- "3000"- "8000"

指定为镜像名称或镜像 ID

imgae:ubuntu

设置网络模式

network: "none"network: "bridge"network: "host"network: "servuce:[service.name]"network: "container:[name or id]"

所加入的网络

services:web:networks:web_net

跟主机系统共享进程命名空间

pid: "host"

暴露端口信息

ports:- "3000"- "8000:8000"- "49100:22"- "127.0.0.1:8001:8001"

数据卷所挂载路径

volumes:- /var/lib/mysql- cache/:tmp/cache- ~/config:/etc/config/:ro

指定重启策略

restart:always

Docker 三剑客之 Compose相关推荐

  1. Docker三剑客之Compose

    Docker三剑客之Compose Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速的部署分布式应用. Compose 基本介绍 Compose ...

  2. docker系列(三)docker三剑客之Compose

    docker-compose,快速对docker容器集群进行编排 Docker Compose 介绍 Docker-Compose 是 Docker 的一种编排服务,是一个用于在 Docker 上定义 ...

  3. docker三剑客之 Docker Machine Docker Compose Docker Swarm

    Docker 三剑客 一.docker machine 1.Docker Machine 简介 2.Docker Machine实践 二.docker-compose 1.docker-compose ...

  4. Docker(五):Docker 三剑客之 Docker Machine

    上篇文章Docker(四):Docker 三剑客之 Docker Compose 介绍了 Docker Compose,这篇文章我们来了解 Docker Machine . Docker Machin ...

  5. Docker基础30--6.4 Docker三剑客之Swarm

    6.4 Docker三剑客之Swarm Docker Swarm是Docker官方三剑客项目之一,提供Docker容器集群服务,是Docker官方对容器云生态进行支持的核心方案.使用它,用户可以将多个 ...

  6. Docker三剑客docker-machine ,docker-compose,docker-swam

    目录 Docker三剑客之一:docker-machine ​Docker三剑客之一:docker-compose Docker三剑客之一:docker-swarm 创建swarm集群 创建集群服务 ...

  7. Docker 三剑客-------docker swam,visualizer监控、stack部署集群、Portainer可视化

    Docker 三剑客-------docker swam.visualizer监控.stack部署集群.Portainer可视化 文章目录 Docker 三剑客-------docker swam.v ...

  8. Docker三剑客之Docker Swarm

    目录 一.什么是Docker Swarm 二.Docker Swarm 基本结构图 三.Swarm的几个关键概念 四.Swarm的工作模式 五.Swarm的调度策略 六.Swarm Cluster模式 ...

  9. docker三剑客docker-compose、docker-machine、swarm

    2019独角兽企业重金招聘Python工程师标准>>> Docker三大编排工具: Docker Compose:是用来组装多容器应用的工具,可以在 Swarm集群中部署分布式应用. ...

  10. Docker 三剑客之Docker Swarm

    Docker Swarm 介绍 Swarm 在 Docker 1.12 版本之前属于一个独立的项目,在 Docker 1.12 版本发布之后,该项目合并到了 Docker 中,成为 Docker 的一 ...

最新文章

  1. ICLR2020全析解读:华人学者占据60%,谷歌再次领跑!(附最新高引华人榜单)...
  2. 云计算技术 — 混合云
  3. tp中php验证码程序,thinkPHP 验证码生成与验证
  4. java中getchars方法_Java getChars() 方法
  5. 剑指Offer - 面试题64. 求1+2+…+n(递归)
  6. Transformer在计算机视觉领域走到哪了?
  7. 输入一批整数,输出最大最小值,输入0结束
  8. 微软官方大秀DX12:性能暴涨50%
  9. js 怎么知道打印完成_你真的知道缩放打印怎么用吗?
  10. 虚拟机ping不通主机与外网的解决方法
  11. Vue学习笔记之05-条件判断
  12. iOS开发——策略模式
  13. wget 下载文件出错
  14. 【华为机试题】华为机试真题附解答(2020.9.16/c++)
  15. 昌乐博闻学校2021年高考成绩查询,2021高考难度升级吗?两点忠告送给高考生
  16. 树莓派4B通过Python读取MLX90614温度
  17. 你知道战国四大名将都有谁吗
  18. UI设计可供性解析:巧用隐藏的设计力提升用户体验
  19. DDOS防护如何建设?
  20. JavaScript-JS判断一个整数是偶数还是奇数

热门文章

  1. 从零基础入门Linux系统
  2. uniapp连接手机端调试
  3. vue 批量下载图片并打包成zip包
  4. 百度开放平台-快递物流解决方案
  5. css--打字机效果
  6. 推荐收藏 | 常用图片处理网站合集(8个网站)
  7. 航天生物计算机作文,科幻遨游太空作文(精选6篇)
  8. springboot整合容联云发短信验证码
  9. arduino硬件虚拟键盘中对应键盘上的按键整理
  10. Linux下和编译器、程序的运行、环境变量等相关的常见问题