SpringBoot -- Docker Compose的支持

Docker Compose是一种流行的技术,可以用来定义和管理你的应用程序所需的多个服务容器。通常在你的应用程序旁边船舰一个compose,yaml文件,它是定义和配置服务容器的。

适用Docker Compose的典型工作流程是运行docker compose up,用它链接启动的服务来处理你的应用程序,然后在完成后运行docker compose down。

sping-boot-docker-compose模块可以包含在项目中为适用Docker Compose的容器工作提供支持。将该模块的依赖添加到你的工程中。

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-docker-compose</artifactId>

<optional>true</optional>

</dependency>

</dependencies>

当这个模块作为依赖被引用时,Spring Boot 将做以下工作:

  • 在你的应用程序目录中搜索compose.yaml和其他常见的compose文件名
  • 用发现compose.yaml来调用docker compose up
  • 为每一个支持的容器创建服务连接bean
  • 当应用程序关闭时调用docker compose stop

docker compose或docker-compose CLI应用程序需要在你的路径上,以便Springboot的能够正常工作。

服务连接是与远程服务的连接。Spring Boot的自动配置可以消费服务连接的细节,并使用它们来建立与远程服务的连接。这样做的时候,连接细节优先于任何与连接相关的配置属性。

当使用Spring Boot的Docker Compose支持时i,服务连接被建立到容器映射的端口。

Docker compose的使用方式通常是将容器内的端口映射到你的电脑上的短暂端口。例如,一个Postgres服务器可能在容器内使用5432端口运行,但在本地被映射到一个完全不同的端口。服务练级将始终发现并使用本地映射的端口。

服务连接是通过容器的镜像名称建立的。目前支持以下服务连接:

相关推荐
maochongsandai1104 分钟前
Centos上运行docker应用命令汇总
linux·docker·centos
仙逆GPT8 分钟前
ChatGPT、Codex工程机制:Agent把@Transactional方法改成异步执行,为什么数据会出现部分提交?
spring boot·chatgpt·codex·chatgptplus·chatgptpro
艾伦_耶格宇22 分钟前
【kubernetes - 1.28版本】-4 containerd与docker-ce 的区别
docker·容器·kubernetes
切糕师学AI37 分钟前
K8s 滚动更新与 Spring Boot 优雅停机实战:如何做到真正的平滑发布?
spring boot·云原生·容器·kubernetes·k8s
正经教主1 小时前
【FDE系列】阶段2:Day 45(up详细版):综合实战 — Docker + Nginx + Git 完整部署与本周收官
人工智能·git·nginx·docker·fde
java_logo1 小时前
Docker 部署 Portainer CE 中文版:轻松搭建容器管理平台
运维·docker·容器·portainer·容器管理·轩辕镜像·portainer ce
LazyHunter92 小时前
Spring Boot 3 微服务实践指南
java·spring boot
zzu123zsw2 小时前
从 SPI 契约到独立 ClassLoader 隔离:Spring Boot 插件热插拔架构设计与内存泄露防御
java·spring boot·后端·架构设计
yz_aiks11 小时前
Spring AI 2.1 ChatMemory 已过时用什么替代:迁移到 Session Memory 实战(JDBC 存储与会话压缩)
java·spring boot·大模型·ai agent·spring ai
学长毕设11 小时前
基于SpringBoot的上门洗车服务系统设计与实现
java·spring boot·后端