目录

简介:

官方介绍

批量容器编排

Docker-Compose up 1000个服务,也可以一键启动

Compose重要概念

安装Docker Compose

升级Docker Compose

重启的执行命令


简介:

我们之前操作Docker的过程是:DockerFile build run进行手动操作,单个容器,如果假设我们1000个微服务,并行微服务之间还存在依赖关系,这个时候,我们就可以使用Docker Compose来轻易高效的管理容器,定义运行多个容器

官方介绍

定义、运行多个容器

Yamlfile 配置环境

Compose是一个用于定义和运行多容器Docker应用程序的工具。使用Compose,可以使用Yaml文件来配置应用程序的服务。然后,使用一个命令,就可以从配置中创建并启动所有服务。要了解有关Compose的所有特性的更多消息,请参阅特性列表

Compose可以在所有环境中工作生产、阶段、开发、测试,以及CI工作流。使用Compose基本有三个步骤

  1. 使用Dockerfile定义你的应用程序的环境,这样就可以在任何地方复制
  2. 在Docker-compose中定义组成应用程序的服务。这样他们就可以在一个独立的环境中一起运行
  3. 运行Docker-compose up和Compose启动运行整个应用程序

批量容器编排

Compose是Docker官方开源项目,需要安装

Dockerfile让程序在任何地方运行,Web程序。Redis、MySql、Nginx 多个容器

Compose的Yaml文件如下

version: '2.0'
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
- logvolume01:/var/log
links:
- redis
redis:
image: redis
volumes:
logvolume01: {}

Docker-Compose up 1000个服务,也可以一键启动

Compose重要概念

  1. 服务Service 容器,应用(Web,Redis,Mysql)
  2. 项目Project,就是一组关联的容器

常见的Docker Compose脚本

安装git命令: yum install -y git

git clone docker-compose: docker-compose集成环境系列
cd docker-compose/Linux

举例:

version: '3'

services:

mysql:

image: registry.cn-hangzhou.aliyuncs.com/zhengqing/mysql:5.7 # 原镜像`mysql:5.7`

container_name: mysql_3306 # 容器名为'mysql_3306'

restart: unless-stopped # 指定容器退出后的重启策略为始终重启,但是不考虑在Docker守护进程启动时就已经停止了的容器

volumes: # 数据卷挂载路径设置,将本机目录映射到容器目录

- "./mysql5.7/my.cnf:/etc/mysql/my.cnf"

- "./mysql5.7/data:/var/lib/mysql"

# - "./mysql5.7/conf.d:/etc/mysql/conf.d"

- "./mysql5.7/log/mysql/error.log:/var/log/mysql/error.log"

- "./mysql5.7/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d" # 可执行初始化sql脚本的目录 -- tips:`/var/lib/mysql`目录下无数据的时候才会执行(即第一次启动的时候才会执行)

environment: # 设置环境变量,相当于docker run命令中的-e

TZ: Asia/Shanghai

LANG: en_US.UTF-8

MYSQL_ROOT_PASSWORD: root # 设置root用户密码

MYSQL_DATABASE: demo # 初始化的数据库名称

ports: # 映射端口

- "3306:3306"

安装Docker Compose

官方文档:Overview | Docker Documentation

下载

  1. 首先需要先安装一下Docker
  2. 运行此命令下载Docker Compose的当前稳定版本$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  3. 二进制文件添加可执行权限:sudo chmod +x /usr/local/bin/docker-compose

如果安装失败的话,可以检查一下安装路径是否正确。 sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

  1. 测试安装 docker-compose --version

升级Docker Compose

如果从Compose1.2或更早版本升级,请在升级Compose后移除现有容器。这是因为从1.3版本之后,Compose使用Docker标签来跟踪容器,并且需要重新创建容器以添加标签。

如果Compose检查到创建时没有标签的容器,它会拒绝运行,这样您就不会得到两组。如果想继续使用现有容器,可以在使用Compose1.5使用以下命令迁移

docker-compose migrate-to-labels

或者,如果不担心保留,可以删除,compose知识创建新的

docker container rm -f -v myapp_web_l myapp_....

重启的执行命令

sudo /usr/local/bin/docker-compose down

sudo /usr/local/bin/docker-compose up -d

Docker-compose相关推荐

  1. Docker compose 容器编排

    1. 概述 问题:如果要使用 Docker 运行 LNMP 架构,那么 Nginx.MySQL.PHP. Linux三个服务运行在一个容器里,还是运行在多个容器里呢? 答案是都可以. 你可以分别放在三 ...

  2. Docker核心技术之Docker Compose

    一.Docker Compose 简介 Docker Compose是什么? Docker Compose是一个能一次性定义和管理多个Docker容器的工具. 详细地说: Compose中定义和启动的 ...

  3. Docker Compose 1.18.0 之服务编排详解

    一个使用Docker容器的应用,通常由多个容器组成.使用Docker Compose,不再需要使用shell脚本来启动容器.在配置文件中,所有的容器通过services来定义,然后使用docker-c ...

  4. Centos7 Docker Compose部署mysql5.7

    1 . 创建docker-compose.yml文件 version: '3' services:mysql:restart: alwaysimage: mysql:5.7.22container_n ...

  5. Docker Compose安装

    一 .  Docker Compose概述 Docker Compose是一个用于定义和运行多个容器Docker应用程序的工具.使用Compose,您可以使用YAML文件来配置应用程序的服务.然后 , ...

  6. Docker(八):Docker Compose

    Docker Compose Compose 简介 Compose 是用于定义和运行多容器 Docker 应用程序的工具.通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务.然 ...

  7. Docker compose多容器管理

    前言 Docker Compose 将所管理的容器分为三层,工程(project),服务(service)以及容器(contaienr). Docker Compose 运行的目录下的所有文件(doc ...

  8. Docker Compose—简化复杂容器应用的利器

    Compose是用于定义和运行复杂Docker应用的工具.你可以在一个文件中定义一个多容器的应用,然后使用一条命令来启动你的应用,然后所有相关的操作都会被自动完成. 1. 安装Docker和Compo ...

  9. Spring Boot 2.0(五):Docker Compose + Spring Boot + Nginx + Mysql 实践

    我知道大家这段时间看了我写关于 docker 相关的几篇文章,不疼不痒的,仍然没有感受 docker 的便利,是的,我也是这样认为的,I know your felling . 前期了解概念什么的确实 ...

  10. Windows 系统安装Docker Compose 步骤

    参考 Docker Compose official 官方安装指南: https://docs.docker.com/compose/install/ 实际上到目前为止还不能直接在Windows上安装 ...

最新文章

  1. PowerDesigner与Rose详解教程
  2. 《你的灯亮着吗》阅读笔记1
  3. java正则表达式及api_Java魔法堂:深入正则表达式API
  4. python3 发送邮件
  5. luogu4074-[WC2013]糖果公园
  6. 【Python】如何学好Python
  7. OCA第4部分中的Java难题
  8. C++为什么空格无法输出_OOP 面向对象编程:由 C 到 C++
  9. 一些上流的CSS3图片样式
  10. 利用RobHess源码实现SIFT算法及RANSAC去错的图像特征提取匹配及去除错匹配
  11. 鼓励自己成为一名合格程序设计师
  12. 深度评测阿里云、百度云、腾讯云和华为云
  13. MySQL中将查询所得结果集的某一字段拼接成字符串
  14. 使用NAT网关挂载本地物理机
  15. 《统计学习方法》读书笔记
  16. 文本生成系列之预训练模型
  17. SQL Server 2005系列教学(12) 导入导出服务
  18. 现代信号处理——参数估计理论(2)——估计子、贝叶斯估计、最大似然估计
  19. 解决从PDF复制到Word中的英文字母变成宋体格式的问题
  20. 专业破解各种版本的IDEA

热门文章

  1. 2023年1月9日:fastadmin在列表操作列区域添加按钮及控制已有按钮显示
  2. 期货热门品种基本面逻辑:印尼恢复煤炭出口,不锈钢检修力度加大
  3. SQL 求 3 列异值的 4 种方法
  4. 实验:一元多项式求和
  5. 冬天用热水袋能止咳催眠镇痛
  6. Flask处理高并发
  7. 微信整了一个新功能,专治各种借钱不还
  8. Processing快速使用
  9. SAP ABAP ALV下钻
  10. 转载别人的深度学习学习流程