我是Docker的新手,为将容器/图像/服务概念缠住了脑袋。我无法使用django映像启动容器。这是我的Docker文件:
FROM python:3.6
ENV PYTHONUNBUFFERED 1
RUN mkdir /django-ex
COPY /django-ex /django-ex
WORKDIR /django-ex
RUN pip install -r requirements.txt
'Build'工作正常,没有错误。但是“ up”失败并显示错误:
web_1 | python: can't open file '/django-ex/manage.py': [Errno 2] No such file or directory
maria-ra-staff_web_1 exited with code 2
这是我的docker-compose.yml:
version: '3.6'
services:
db:
image: postgres
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/django-ex
ports:
- "8000:8000"
depends_on:
- db
我不明白为什么“ up”没有我的项目文件。我在过程中错过了什么吗?
编辑:构建输出:
db uses an image, skipping
Building web
Step 1/6 : FROM python:3.6
---> 5bf410ee7bb2
Step 2/6 : ENV PYTHONUNBUFFERED 1
---> Running in 2815482f2d9d
Removing intermediate container 2815482f2d9d
---> a56843c06131
Step 3/6 : RUN mkdir /django-ex
---> Running in 8c6a4a63c266
Removing intermediate container 8c6a4a63c266
---> 8ffbdb670dbb
Step 4/6 : COPY /django-ex /django-ex
---> c314f8e07aae
Step 5/6 : WORKDIR /django-ex
---> Running in 15f0109d52cd
Removing intermediate container 15f0109d52cd
---> 06b4e86e58f8
Step 6/6 : RUN pip install -r requirements.txt
---> Running in eaa9782e1e9b
{pip install output}
Successfully installed django-1.11.26 django-debug-toolbar-1.8 gunicorn-19.4.5 psycopg2-2.7.3.1 pytz-2019.3 sqlparse-0.3.0 whitenoise-3.3.1
Removing intermediate container eaa9782e1e9b
---> f22db286d5e3
答案 0 :(得分:0)
我仍然不知道如何,但是将卷中的文件夹名称更改为'/ django-ex-2'很有帮助。现在构建和运行正常(我在Dockerfile中添加了“ migrate”)。谢谢。
P.S。我不会接受这个答案。也许有人会解释为什么有帮助。