我正在运行一个包含两个服务的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
有没有任何可能的方法可以做到I don't want any container to be stopped or restarted
,但只需向堆栈中添加额外的容器?
您可以使用"--没有重新创建";类似:
docker-compose -up -d --scale worker=3 --no-recreate
结账:
码头文件