ran*_*fde 4 deployment software-distribution docker microservices devops
我想创建一个安装脚本,它可以根据用户输入来支持某些服务。我正在使用 docker 来管理这些服务。使用 docker-compose 我可以定义多个服务,但默认情况下所有在 docker-compose.yml 中定义的服务都启动。有什么解决方法吗?另外,这是一个糟糕的策略吗[但我所有的服务都使用 docker,那么有没有其他方法]?
谢谢!
acr*_*ran 11
docker-compose从1.28.0开始,新的服务配置文件就是为此而设计的!您可以将服务标记为profiles仅在特定配置文件中启动:
services:
app:
# ...
database:
# ...
app-init:
profiles: ["init"]
# ...
database-init:
profiles: ["init"]
# ...
Run Code Online (Sandbox Code Playgroud)
docker-compose up # start only your core services
docker-compose --profile init up # start app and init services
docker-compose run database-init # run init service interactively
Run Code Online (Sandbox Code Playgroud)
你的意思是:
docker-compose up SERVICE ?
这应该启动单个服务和任何链接的容器。你也可以这样做:
docker-compose run SERVICE [COMMAND] [ARGS...]
根据您的需要,这可能对您更好,但与up执行方式有所不同。请参阅:https : //docs.docker.com/compose/reference/run/
| 归档时间: |
|
| 查看次数: |
4284 次 |
| 最近记录: |