gpt4 book ai didi

docker - 如何在不重新启动容器的情况下重新调整已经运行的 docker-compose 的规模?

转载 作者:行者123 更新时间:2023-12-02 01:49:00 25 4
gpt4 key购买 nike

我正在运行一个包含两个服务的 docker-compose 堆栈,我想多次缩放/重新缩放其中一个服务。

这是我的docker-compose.yaml文件:

version: '3.8'
services:
manager:
hostname: manager
build:
context: .
dockerfile: manager.ubuntu.Dockerfile
restart: always
ports:
- '7777:80'
volumes:
- './src:/src'
- './app:/var/www/html'
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker
tty: true
networks:
- my-net
worker:
build:
context: .
dockerfile: worker.dind.Dockerfile
restart: always
privileged: true
tty: true
networks:
- my-net
networks:
my-net:

我是这样缩放的:

docker-compose -p stack up --scale worker=3 --build

这是第一个结果:

...   NAMES
... stack_manager_1
... stack_worker_1
... stack_worker_2
... stack_worker_3

现在我有 3 个工作人员和 1 个经理正在运行,有时我想重新调整规模以添加 2 个工作人员,而不影响其他容器的当前状态。

重新缩放后的预期结果

...   NAMES
... stack_manager_1
... stack_worker_1
... stack_worker_2
... stack_worker_3
... stack_worker_4
... stack_worker_5

如果我不想停止或重新启动任何容器,而只是向堆栈添加其他容器,是否有任何可能的方法来做到这一点?

最佳答案

您可以使用“--no-recreate”来完成此操作,例如:

docker-compose -up -d --scale worker=3 --no-recreate

查看:

docker docs

关于docker - 如何在不重新启动容器的情况下重新调整已经运行的 docker-compose 的规模?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70552715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com