【发布时间】:2015-10-20 05:41:20
【问题描述】:
我有一个 Docker 文件,可以完美构建:docker build -t myfile .
但是当我尝试使用 docker-compose 运行它时 - 它给了我一个错误:
web_1 | /bin/sh: 1: [/home/root/myproject/uwsgi.sh: not found
myproject_web_1 exited with code 127
Gracefully stopping... (press Ctrl+C again to force)
如果我手动启动这个脚本 - 它工作正常。
Dockerfile 看起来像:
FROM ubuntu:14.04
ADD ./myproject/ /home/root/myproject/
WORKDIR /home/root/myproject/
# Some other stuff...
CMD ['/home/root/myproject/uwsgi.sh', 'start' ]
docker-compose.yml:
web:
build: .
ports:
- "8888:8888"
links:
- db
db:
image: mysql
为什么会出现此错误? 谢谢。
【问题讨论】:
-
你在使用 .dockerignore 吗? github.com/docker/compose/issues/2109#issuecomment-144163891
-
好吧,如果它说 uwsgi.sh not found 我会首先使用 bash 并查看它是否存在以及拥有什么所有权和权限...
-
如果你在 Windows 主机上构建它,在 ADD 或 COPY 后运行 dos2unix
标签: docker dockerfile docker-compose