Docker | Docker技术基础梳理(九) - Docker Compose 浅析与 部署实例

时间:2022-06-23
本文章向大家介绍Docker | Docker技术基础梳理(九) - Docker Compose 浅析与 部署实例,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

什么是Docker Compose

  • Docker Compose是一个能一次性定义和管理多个Docker容器的工具。
  • Compose中定义和启动的每一个容器都相当于一个服务(service)
  • Compose中能定义和启动多个服务,且它们之间通常具有协同关系
  • 我们通常使用YAML文件来配置我们应用程序的服务,并且使用单个命令(docker-compose up),就可以创建并启动配置文件中配置的所有服务

如何安装Docker Compose

Windows与Mac: Docker for Mac与Docker for Windows自带docker-compose

Linux系统:

sudo curl -L https://github.com/docker/compose/releases/download/[版本号]/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

安装完成后使用 docker-compose version 查看版本

可以访问 https://github.com/docker/compose/releases 查看历史版本

安装后截图

Docker Compose文件配置与注意事项

Docker Compose file的配置项有非常多需要注意的点,如果一一赘述就相当于搬运官方文档了,这里标识几个经常使用的配置项,以供大家参考:

version:指定Docker Compose File版本号
services:定义多个服务并配置启动参数
volumes:声明或创建在多个服务中共同使用的数据卷对象
networks:定义在多个服务中共同使用的网络对象
configs:声明将在本服务中要使用的一些配置文件
secrets:声明将在本服务中要使用的一些秘钥、密码文件
x-***:自定义配置。主要用于复用相同的配置。

官方文档直通车:https://docs.docker.com/compose/compose-file/#service-configuration-reference

Docker Compose File 注意事项

Docker Compose File 的格式要求非常严格,一定需要注意的有:

  • 配置项的缩进使用空格
  • 注意配置项冒号后要添加空格
  • 编写完Docker Compose File后可以使用docker-compose config 检查文件是否出错

Docker Compose 项目实例演示

Kafka运行环境搭建

这个项目的Docker File在昨天的文章中已经给大家展示过了,这里重新贴一次,让大家先有个大概印象。

使用Docker Compose 部署小型flask web 项目
  1. 首先准备好你的flask项目源码,并上传至云服务器上
  2. 将项目需要使用的类库导出 requirements.txt 备用
  3. 编写运行对应项目的Dockerfile,并构建出一个新的项目镜像(这步也可以不做,但是这里为了方便理清思路建议按步骤一步一步来)
  1. 按照项目需要将要启动的容器写成对应的服务
  1. 使用 docker-compose up -d运行服务

Docker Compose 与 Dockerfile 总结

关于Dockerfile与Docker Compose的两篇文章关于理论的描述比较少,大多都是实操的内容,如果你看到这里希望你能结合之前的文章动手实践一下,加深印象才能了解到关于Dockerfile和Dcoker compose 相关的难点。