Docker 群部署失败,'Pool overlaps with other one'



我有一个正在工作的docker容器,我已经可以使用它的docker-compose.yml成功运行它了。

现在尝试切换到docker swarm init

结果:当我尝试部署到docker swarm时,我的容器启动失败,Pool overlaps with other one。可能是什么问题?

docker stack deploy -c docker-compose.yml docker-test

我自己并没有创建任何网络,只是依靠docker默认值:

#installed networks by docker + docker-compose + docker swarm
$docker network ls
NETWORK ID     NAME                   DRIVER    SCOPE
4d523758a775   bridge                 bridge    local
ac8774f0119e   docker_gwbridge        bridge    local
ea0ehx9k5kxu   docker-test_default    overlay   swarm
12a2cf29c55b   host                   host      local
tbshoxat5bdg   ingress                overlay   swarm
01aff819ac80   none                   null      local
$ docker stack ls
NAME           SERVICES   ORCHESTRATOR
docker-test    1          Swarm
$docker stack ps docker-test
ID             NAME                            IMAGE                                 NODE   DESIRED STATE   CURRENT STATE             ERROR                              PORTS
43q3xo0y5smv   test-docker_test-docker.1       docker-repo:5000/test-docker:latest   dev    Shutdown        Rejected 10 minutes ago   "Pool overlaps with other one …"   
x158nyonghbt    _ test-docker_test-docker.1   docker-repo:5000/test-docker:latest   dev    Shutdown        Rejected 11 minutes ago   "Pool overlaps with other one …"   
4hsis6wslfl1    _ test-docker_test-docker.1   docker-repo:5000/test-docker:latest   dev    Shutdown        Rejected 11 minutes ago   "Pool overlaps with other one …"   
50y8rspynoxu    _ test-docker_test-docker.1   docker-repo:5000/test-docker:latest   dev    Shutdown        Rejected 11 minutes ago   "Pool overlaps with other one …"   

docker-compose.yml:

version: '3.7'
services:
docker-test:
image: docker-repo:5000/docker-test:latest
deploy:
replicas: 1
update_config:
order: start-first
failure_action: rollback
delay: 10s

日志:

$journalctl -fu docker.service
-- Logs begin at Sun 2022-01-16 17:20:01 CET. --
Apr 05 14:16:34 dev dockerd[416253]: time="2022-04-05T14:16:34.484292037+02:00" level=info msg="initialized VXLAN UDP port to 4789 "
Apr 05 14:16:34 dev dockerd[416253]: time="2022-04-05T14:16:34.588014714+02:00" level=error msg="fatal task error" error="Pool overlaps with other one on this address space" module=node/agent/taskmanager node.id=ak88o55xp7uk1bqsocd0ieb1y service.id=8i6n17sognrtvqopzarfdmd17 task.id=x158nyonghbtpalbtlv5nycmr

我的docker配置可能在cat /etc/docker/daemon.json:中如下所示

{
...
"default-address-pools":
[
{
"base": "10.0.0.0/16",
"size": 24
}
]
}

这可能与docker群体网络相冲突。我将上面的更改为11.0.0.0/16,然后使用docker system prune清除所有网络,然后再次使用docker swarm init

最新更新