docker - Docker Compose入门指南

标签 docker docker-compose docker-machine

我正在遵循Docker Compose入门指南(https://docs.docker.com/compose/gettingstarted/),并且已经完全遵循了该指南。我的Dockerfiledocker-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将不起作用。

您有以下选择:

  • 将项目移动到主目录
  • 下的目录
  • 将另一个共享文件夹添加到virtualbox中,用于存储项目的文件夹
  • 不要使用volumes:,将其从docker-compose中删除
  • 关于docker - Docker Compose入门指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39471788/

    相关文章:

    Docker 编写使用 env_file 参数指定的环境变量在 dockerfile 中不起作用

    go - 用于 Go 的 Docker Remote API v1.24 库?

    docker - Docker:无法提取图像(收到长度为20527的超大记录

    docker - 在 Docker 构建时创建动态环境变量

    Docker 组成错误 : container-linux. go: 348

    docker - Docker如何保持镜像不可变

    带有入口点的 docker-compose.yml。文件未找到

    python - Dockerfile:安装软件包以运行python3脚本

    docker - 在 docker windows 容器上的 windows server core 中运行 exe

    docker - 如何在本地机器上查找docker镜像