我正在遵循Docker Compose入门指南(https://docs.docker.com/compose/gettingstarted/),并且已经完全遵循了该指南。我的Dockerfile
,docker-compose.yml
和目录中的所有其他文件与指南中显示的完全相同。
但是,当我尝试运行docker-compose up
时,Web服务将立即退出,退出代码为2,并显示一条错误消息:
web_1 | python: can't open file 'app.py': [Errno 2] No such file or directory
如果自行运行,即构建和运行镜像,则效果很好。
docker build -t composetestweb .
docker run -d -p 5000:5000 composetestweb
该网站吐出一个错误,但是它确实响应。
检查组成的容器似乎可以显示正确的信息:命令,装入的文件夹和工作目录都正确。
我正在Windows 7和VirtualBox 4.3.38上使用Docker Machine。作为记录,到目前为止,我对任何其他Docker指南都没有任何问题。
最佳答案
导致此错误的最常见原因是使用docker-machine
和$HOME
目录的项目输出。 docker-machine
将仅为主目录创建一个Virtualbox共享文件夹,因此,如果您的项目不在该目录下,则volumes:
中使用的docker-compose
将不起作用。
您有以下选择:
volumes:
,将其从docker-compose
中删除关于docker - Docker Compose入门指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39471788/