繁体   English   中英

docker-compose 运行现有容器

[英]docker-compose run existing container

我正在使用 docker-compose 运行一个正在开发的应用程序。

我有一个运行 python Flask web 应用程序的“web”服务。 此服务依赖于其他服务(数据库、缓存等)。

我需要以交互方式运行“web”主服务才能访问调试器 (ipdb)。 我发现这样做的方法是

docker-compose run --name my-app.web --service-ports web

当我退出这个容器并尝试使用相同的命令再次运行它时,我收到了这个错误:

ERROR: Cannot create container for service web: Conflict. The container name "/my-app.web" is already in use by container "4fed84779bb02952dedb8493a65bd83b1a6664f066183233e8c8b4dc62291643". You have to remove (or rename) that container to be able to reuse that name.

如何在不创建新容器的情况下重新启动此容器?

还是每次需要启动此应用程序时创建新容器的正确方法?

或者我是否错过了能够以交互方式启动其中一项服务的功能?

当您设置自定义名称时, docker-compose run在执行完成后不会删除容器。 要启用此行为,请使用选项--rm

docker-compose run --rm --name my-app.web --service-ports web

您还可以手动删除容器以再次运行它:

docker rm my-app.web

如果您没有设置自定义名称,则不需要这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM