我使用docker-compose创建一堆容器并将它们链接在一起.对于某些容器定义,我可能会重新启动:始终作为重启策略.
现在我有一个postgres容器,如果停止,它会重生.
$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a8bb2b781630 postgres:latest "docker-entrypoint.s…" About an hour ago Up About an hour 5432/tcp dcat_postgres.1.z3pyl24kiq2n4clt0ua77nfx5
docker stop a8bb2b781630
a8bb2b781630
$docker rm -f a8bb2b781630
a8bb2b781630
$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93fa7b72c2ca postgres:latest "docker-entrypoint.s…" 12 seconds ago Up 4 seconds 5432/tcp dcat_postgres.1.oucuo5zg3y9ws3p7jvlfztflb
在启动服务的目录中使用docker-compose也不起作用.
$docker-compose down
Removing dcat_postgres_1 ... done
$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7ee7fb0e98cd postgres:latest "docker-entrypoint.s…" 13 seconds ago Up 5 seconds 5432/tcp dcat_postgres.1.jhv1q6vns1avakqjxdusmbb78
我怎样才能杀死一个容器并让它不再复活?
编辑:即使在重新启动Docker服务后,容器也会重新生成.
Docker – 18.06.1-ce-mac73(26764)
macOS High-Sierra,(10.13.6)
最佳答案
我想到了.原来它与docker swarm有关.我曾经在某些方面进行过实验,却没有完全理解它是什么以及它做了什么,显然它只是呆在那里.
我所要做的就是:
docker swarm leave --force
它就像一个真正的僵尸的头像.