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命令来启动并运行整个应用程序,完成一键部署上线
相关推荐
Sheffield7 小时前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
马艳泽7 小时前
win10下运行Start Broker and Proxy报错解决
docker
用户13573999256601 天前
Windows 从 0 搭建 WSL2 原生 AI 开发环境:Codex + Docker + VSCode
docker
vi_h1 天前
在 macOS 上通过 Docker 安装并运行 Ollama(详细可执行教程)
macos·docker·ollama
黑心老魔1 天前
通过 Docker 创建开发环境
docker·开发环境
冬奇Lab2 天前
一天一个开源项目(第41篇):Workout.cool - 现代化开源健身教练平台,训练计划与进度追踪
docker·开源·资讯
天朝八阿哥2 天前
使用Docker+vscode搭建离线的go开发调试环境
后端·docker·visual studio code
阿虎儿3 天前
Docker安装(非sudo用户可用)
docker
AI攻城狮4 天前
用 Playwright 实现博客一键发布到稀土掘金
python·自动化运维
fetasty4 天前
rustfs加picgo图床搭建
docker