gpt4 book ai didi

docker - 停止容器如何使用 `docker-compose run` 运行

转载 作者:IT老高 更新时间:2023-10-28 12:35:21 30 4
gpt4 key购买 nike

我正在尝试使用 docker-compose 来编排多个容器。为了排除故障,我经常通过以下方式从容器中运行 bash:

$ docker-compose run --rm run web bash

我总是尝试传递 --rm 开关,以便在我退出 bash session 时删除这些容器。但有时它们仍然存在,我在 docker-compose ps 的输出中看到它们。

           Name                          Command                State      Ports
----------------------------------------------------------------------------------
project_nginx_1 /usr/sbin/nginx Exit 0
project_nginx_run_1 bash Up 80/tcp
project_web_1 python manage.py runserver ... Exit 128
project_web_run_1 bash Up 8000/tcp

此时,我正在尝试手动停止和删除这些组件,但我无法做到这一点。我试过了:

$ docker-compose stop project_nginx_run_1
No such service: project_nginx_run_1

我还尝试了其他命令rmkill等。

我应该怎么做才能摆脱这些容器?

编辑:

修复了 docker-compose ps 的输出。

最佳答案

使用 docker stop 停止那些测试容器命令而不是使用 docker-compose .

docker-compose当涉及到一起启动许多容器时会发光,但使用 docker-compose启动容器不会阻止您使用 docker命令对单个容器执行任何您需要执行的操作。

docker stop project_nginx_run_1 project_web_run_1 

另外,由于您正在调试容器,我建议使用 docker-compose exec <service id> bash 在正在运行的容器中获取外壳。这样做的好处是不启动新容器。

关于docker - 停止容器如何使用 `docker-compose run` 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31107476/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com