在Gradle或Maven中使用spring-boot-docker-compose时如何选择特定Docker Compose服务?
Spring Boot 3.1 docker-compose 启动特定服务方法
当然可以只启动docker-compose.yaml里的部分服务,Spring Boot 3.1的spring-boot-docker-compose提供了两种实用方式实现:
1. 通过配置文件指定
在Spring Boot应用的配置文件(application.properties或application.yml)中添加配置,明确指定要启动的服务名称:
- 使用
application.properties:
spring.docker.compose.services=redis,mysql
- 使用
application.yml:
spring: docker: compose: services: redis,mysql
注意:这里的redis、mysql必须和你docker-compose.yaml中定义的服务名称完全匹配。
2. 通过命令行参数指定
启动应用时直接通过命令行参数覆盖配置,灵活控制要启动的服务:
- Maven启动方式:
mvn spring-boot:run -Dspring.docker.compose.services=redis,mysql
- Jar包启动方式:
java -jar your-application.jar --spring.docker.compose.services=redis,mysql
如果需要排除某个服务,目前没有直接的排除配置,但可以通过明确列出所有需要启动的服务来间接实现。
内容的提问来源于stack exchange,提问作者Juergen Zimmermann
相关产品推荐
相关产品推荐

