Docker Compose 编排微服务
- Docker Compose 简介
- Docker Compose 安装
- Docker Compose 快速入门
Compose 简介
Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。
Compose 有多种安装方式,例如通过 Shell、pip 以及将 Compose 作为容器安装等。本书讲解通过 Shell 来安装的方式,其他安装方式可详见官方文档:https://docs.docker.com/compose/install/
- 通过以下命令自动下载并安装适应系统版本的 Compose
1 | sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose |
- 为安装脚本添加执行权限
1 2 3 4 | sudo chmod +x /usr/local/bin/docker-compose root @ubuntu :/home/tom/Desktop/ 3 /docker2# docker-compose --version docker-compose version 1.24 . 0 , build 0aa59064 |
Compose 快速入门
使用 Compose 大致有三个步骤
- 使用 Dockerfile(或其他方式)定义应用程序环境,以便在任何地方重现该环境。
- 在 docker-compose.yml 文件中定义组成应用程序的服务,以便各个服务在一个隔离的环境中一起运行。
- 运行 docker-compose up 命令,启动并运行整个应用程序。
我们通过 Docker 运行了 Eureka Server,不过运行的时候采用了docker run
的方式。那我们这次就拿上一节的 Docker 镜像并通过Compose
来运行。
在项目根目录添加docker-compose.yml
文件
1 2 3 4 5 6 | version: '3.1' # 表示该docker-compose.yml文件使用的是Version 3.1 文件格式 services: eureka-server: # 指定docker容器名称 image: spring-cloud-eureka-server: 0.0 . 1 -SNAPSHOT #指定镜像名称,这里采用上一步构建出来的镜像。 ports: - 8761 : 8761 # 指定端口映射,类似docker run的-p选项,注意使用字符串形式 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | root @ubuntu :/home/tom/Desktop/ 3 /docker2/findservice# docker images REPOSITORY TAG IMAGE ID CREATED SIZE eureka-server latest cb300504b1c0 2 minutes ago 128MB <none> <none> 59fb8f8e3f63 17 minutes ago 128MB nginx-demo latest 16e25cfdf65d 3 hours ago 133MB nginx latest 35c43ace9216 3 days ago 133MB hello-world latest bf756fb1ae65 13 months ago 13 .3kB openjdk 8 -jre-alpine f7a292bbb70c 21 months ago 84 .9MB root @ubuntu :/home/tom/Desktop/ 3 /docker2/findservice# cat docker-compose.yml version: '3.1' # 表示该docker-compose.yml文件使用的是Version 3.1 文件格式 services: eureka-server: # 指定docker容器名称 image: eureka-server:latest #指定镜像名称,这里采用上一步构建出来的镜像。 ports: - 8761 : 8761 # 指定端口映射,类似docker run的-p选项,注意使用字符串形式 |
maven 构建项目和 Docker 镜像
1 | mvn clean package -DskipTests && mvn dockerfile:build |
docker images spring-cloud-eureka-server:0.0.1-SNAPSHOT
- compose 运行
1 | docker-compose up |
控制台会输出如下信eureka-server_1
然后访问浏览器http://192.168.154.131:8761/
没有过多的对 Docker Compose 进行过多的展开说明,需要你们利用自己的时间进行深入了解 Docker Compose 的使用。比如 Compose 的常用指令、Compose 组成、Compose 网络设置等内容。后面的章节也会为大家讲解如何通过 Docker Compose 运行多个服务
菜鸟的自白
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现