我正在尝试按照正式文档(https://portainer.readthedocs.io/en/stable/agent.html)中的建议,部署带有推荐的对接者组合配置的门户/代理堆栈,并且它在除1之外的所有节点上正确部署和运行。
在失败的节点上,我检查错误,它说:
starting container failed: error creating external connectivity network: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network这很奇怪,因为这是raspbian的最新安装。我刚刚使用官方raspberry pi网站(https://www.raspberrypi.org/blog/docker-comes-to-raspberry-pi/)的脚本安装了docker。这就是在另一个树莓皮上设置码头的方法(另一个覆盆子皮也很好)。
对接者撰写的文件是:
version: '3.2'
services:
agent:
image: portainer/agent
environment:
AGENT_CLUSTER_ADDR: tasks.agent
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- target: 9001
published: 9001
protocol: tcp
mode: host
networks:
- portainer_agent
deploy:
mode: global
networks:
portainer_agent:
driver: overlay发布于 2018-06-26 06:35:26
我认为这是一个Docker问题,上次我遇到这个错误时,我不得不重新启动我的Docker主机来修复它,并能够创建一个容器。
不过,我使用的是一个旧版本的Docker,可能从那以后就被修复了。
发布于 2021-09-24 13:37:34
如果您已经使用了子网空间池中的所有可用网络,则会发生这种情况。对于覆盖网络,您可以使用--default-addr-pool选项在docker swarm init上限制可用的地址池,您将在docker info的群集部分中看到该选项。一旦docker从该池中分配了所有子网,您将需要删除网络来释放池中的空间(或者使用更大的池创建群集,我不知道在创建群集后如何更改此设置)。
请注意,如果子网是可路由的,那么停靠者将把它当作一个分配的网络,所以要注意像VPN这样的东西,它会创建一个包含所有专用网络的大路由。
https://serverfault.com/questions/918176
复制相似问题