我在试着开第二个码头,去找一个码头工。
首先运行容器
docker-compose run my-centos bash当我试图打开第二个终端时
docker-compose exec my-centos bash我明白
ERROR:No container found for my_centos_1如果我搜索正在运行的容器的名称,就会得到
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
34a95b44f0a2 centos6 "bash" 9 minutes ago Up 9 minutes docker_my-centos_run_1为什么停靠-组合主管搜索docker_my_centos_1而不是docker_my-centos_run_1?
发布于 2017-11-20 15:12:38
docker-compose用于运行多容器应用程序,并且应该与docker-compose up一起使用。当您使用docker-compose run时,您将生成一个特殊的容器,这个容器并不是真正用于正常使用的。
因为docker -组合只是一个围绕docker的包装器,所以仍然可以通过普通的docker命令访问这个特殊容器:
docker exec docker_my-centos_run_1 bash
否则,我建议您的容器开始使用docker-compose up。这使得您可以以指定的方式运行第二个bash:
docker-compose exec my-centos bash
注意:--我不知道您是否可以直接用docker-compose up附加TTY,所以您可能需要运行一个额外的docker-compose exec my-centos bash才能得到两个TTY。
发布于 2020-07-12 04:34:06
你需要做“码头-组成-d”然后尝试你的命令。
发布于 2021-02-05 19:59:51
我认为您可能对项目名称有问题,因为您没有告诉Docker您指的是项目。
我面临着这个问题,可以修正添加项目名称如下:
docker-compose -p myprojectname ps或
docker-compose -p myprojectname exec php_service composer install这篇文章解释道:https://codereviewvideos.com/blog/how-i-fixed-docker-compose-exec-error-no-container-found-for/
https://stackoverflow.com/questions/47394428
复制相似问题