我已经启用了Docker Swarm进行本地测试。现在,每次尝试使用docker-compose up
部署时,我会看到以下警告:
警告:您正在使用的Docker引擎处于Swarm模式运行。
Compose不使用Swarm模式将服务部署到Swarm中的多个节点上。所有容器都将在当前节点上调度。
要在Swarm中部署应用程序,请使用
docker stack deploy
。
如何禁用Docker Swarm模式?
我已经启用了Docker Swarm进行本地测试。现在,每次尝试使用docker-compose up
部署时,我会看到以下警告:
警告:您正在使用的Docker引擎处于Swarm模式运行。
Compose不使用Swarm模式将服务部署到Swarm中的多个节点上。所有容器都将在当前节点上调度。
要在Swarm中部署应用程序,请使用
docker stack deploy
。
如何禁用Docker Swarm模式?
docker swarm leave
用于让工作节点退出群集,而 docker swarm leave --force
则是用于从群集中移除管理节点。
docker swarm leave
应该就能解决问题
docker swarm leave --force
命令,但它确实起作用了,谢谢! - Datageekdocker swarm leave --force
docker network prune
第一个命令是停止swarm,然后删除所有网络。这应该可以解决问题。
如果 docker swarm leave
和 docker swarm leave --force
无法正常工作并返回错误
Error response from daemon: context deadline exceeded
你可以删除 /var/lib/docker/swarm 并重新启动服务。例如在CentOS操作系统中。
systemctl restart docker
rm
命令,则会以非常笨拙的方式有效地删除Docker。 - Mike Robinson
docker stack
),然后再禁用/删除Swarm。 - Muhammad Tariqdocker stack
或服务将在管理节点宕机或无法维持法定人数时自动删除。请查看给定链接中的“离开Swarm”部分:https://docs.docker.com/engine/swarm/manage-nodes/ - Muhammad Tariq