Docker 三剑客之 Compose
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相关推荐
- Docker三剑客之Compose
Docker三剑客之Compose Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速的部署分布式应用. Compose 基本介绍 Compose ...
- docker系列(三)docker三剑客之Compose
docker-compose,快速对docker容器集群进行编排 Docker Compose 介绍 Docker-Compose 是 Docker 的一种编排服务,是一个用于在 Docker 上定义 ...
- docker三剑客之 Docker Machine Docker Compose Docker Swarm
Docker 三剑客 一.docker machine 1.Docker Machine 简介 2.Docker Machine实践 二.docker-compose 1.docker-compose ...
- Docker(五):Docker 三剑客之 Docker Machine
上篇文章Docker(四):Docker 三剑客之 Docker Compose 介绍了 Docker Compose,这篇文章我们来了解 Docker Machine . Docker Machin ...
- Docker基础30--6.4 Docker三剑客之Swarm
6.4 Docker三剑客之Swarm Docker Swarm是Docker官方三剑客项目之一,提供Docker容器集群服务,是Docker官方对容器云生态进行支持的核心方案.使用它,用户可以将多个 ...
- Docker三剑客docker-machine ,docker-compose,docker-swam
目录 Docker三剑客之一:docker-machine Docker三剑客之一:docker-compose Docker三剑客之一:docker-swarm 创建swarm集群 创建集群服务 ...
- Docker 三剑客-------docker swam,visualizer监控、stack部署集群、Portainer可视化
Docker 三剑客-------docker swam.visualizer监控.stack部署集群.Portainer可视化 文章目录 Docker 三剑客-------docker swam.v ...
- Docker三剑客之Docker Swarm
目录 一.什么是Docker Swarm 二.Docker Swarm 基本结构图 三.Swarm的几个关键概念 四.Swarm的工作模式 五.Swarm的调度策略 六.Swarm Cluster模式 ...
- docker三剑客docker-compose、docker-machine、swarm
2019独角兽企业重金招聘Python工程师标准>>> Docker三大编排工具: Docker Compose:是用来组装多容器应用的工具,可以在 Swarm集群中部署分布式应用. ...
- Docker 三剑客之Docker Swarm
Docker Swarm 介绍 Swarm 在 Docker 1.12 版本之前属于一个独立的项目,在 Docker 1.12 版本发布之后,该项目合并到了 Docker 中,成为 Docker 的一 ...
最新文章
- ICLR2020全析解读:华人学者占据60%,谷歌再次领跑!(附最新高引华人榜单)...
- 云计算技术 — 混合云
- tp中php验证码程序,thinkPHP 验证码生成与验证
- java中getchars方法_Java getChars() 方法
- 剑指Offer - 面试题64. 求1+2+…+n(递归)
- Transformer在计算机视觉领域走到哪了?
- 输入一批整数,输出最大最小值,输入0结束
- 微软官方大秀DX12:性能暴涨50%
- js 怎么知道打印完成_你真的知道缩放打印怎么用吗?
- 虚拟机ping不通主机与外网的解决方法
- Vue学习笔记之05-条件判断
- iOS开发——策略模式
- wget 下载文件出错
- 【华为机试题】华为机试真题附解答(2020.9.16/c++)
- 昌乐博闻学校2021年高考成绩查询,2021高考难度升级吗?两点忠告送给高考生
- 树莓派4B通过Python读取MLX90614温度
- 你知道战国四大名将都有谁吗
- UI设计可供性解析:巧用隐藏的设计力提升用户体验
- DDOS防护如何建设?
- JavaScript-JS判断一个整数是偶数还是奇数