docker之compose篇

参考链接

docker系列视频

blog.csdn.net/sareur_1879...

compose背景、解决的问题

Compose是Docker公司推出的一个工具软件,可以管理多个Docker容器组成一个应用。你需要定义一个YAML格式的配置文件docker-compose.yml,写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关闭这些容器

docker建议我们每一个容器中只运行一个服务,因为docker容器本身占用资源极少,所以最好是将每个服务单独的分割开来但是这样我们又面临了一个问题?

如果我需要同时部署好多个服务,难道要每个服务单独写Dockerfile然后在构建镜像,构建容器,这样累都累死了,所以docker官方给我们提供了docker-compose多服务部署的工具

例如要实现一个Web微服务项目,除了Web服务容器本身,往往还需要再加上后端的数据库mysq服务容器,redis服务器,注册中心eureka,甚至还包括负载均衡容器等等。。。。。。

Compose允许用户通过一个单独的docker-compose.yml模板文件(YAML格式)来定义一组相关联的应用容器为一个项目(project)。

可以很容易地用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。Docker-Compose解决了容器与容器之间如何管理编排的问题

  1. Dockerfile是用来构建docker镜像的
  2. docker-compose是用来基于docker-compose.yml来构建docker容器的

compose下载安装

Docker-Compose是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。

compose管网:docs.docker.com/compose/ compose管网下载:docs.docker.com/compose/ins...

compose核心概念

服务service和工程project

  • 服务service:一个个应用容器实例,比如订单微服务、库存微服务、mysql容器、nginx容器或者redis容器

  • 工程project:由一组关联的应用容器组成的一个完整业务单元,在docker-compose.yml文件中定义

compose使用三个步骤

  1. 编写Dockerfile定义各个微服务应用并构建出对应的镜像文件
  2. 使用docker-compose.yml定义一个完整业务单元,安排好整体应用中的各个容器服务。
  3. 最后,执行docker-compose up命令来启动并运行整个应用程序,完成一键部署上线
相关推荐
.生产的驴39 分钟前
Docker 部署Nexus仓库 搭建Maven私服仓库 公司内部仓库
java·运维·数据库·spring·docker·容器·maven
知行0241 分钟前
MySQL的Docker版本,部署在ubantu系统
数据库·mysql·docker
搬砖的工人1 小时前
Docker环境下的Apache NiFi安装实践踩坑记录
docker·容器·apache
luck_me52 小时前
K8s 图形界面管理kubesphere
云原生·容器·kubernetes
QX_hao5 小时前
【docker】--镜像管理
运维·docker·容器
Auc245 小时前
OJ判题系统第6期之判题逻辑开发——设计思路、实现步骤、代码实现(策略模式)
java·开发语言·docker·容器·策略模式
快乐肚皮5 小时前
深入解析Docker:核心架构与最佳实践
java·运维·docker·容器
上天_去_做颗惺星 EVE_BLUE8 小时前
Docker入门教程:常用命令与基础概念
linux·运维·macos·docker·容器·bash
alden_ygq9 小时前
Kubernetes容器运行时:Containerd vs Docker
docker·容器·kubernetes
努力搬砖 ing9 小时前
Docker疑难杂症解决指南
docker·容器·eureka