【发布时间】:2020-01-17 21:37:21
【问题描述】:
我是 Docker 新手,我想将 Django 应用程序 dockerise 以作为容器运行。如下。
这里是Dockerfile
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/
这里是docker-compose.ymlconf
version: '3'
networks:
mynetwork:
driver: bridge
services:
db:
image: postgres
ports:
- "5432:5432"
networks:
- mynetwork
environment:
POSTGRES_USER: xxxxx
POSTGRES_PASSWORD: xxxxx
web:
build: .
networks:
- mynetwork
links:
- db
environment:
SEQ_DB: cath_local
SEQ_USER: xxxxx
SEQ_PW: xxxxx
PORT: 5432
DATABASE_URL: postgres://xxxxx:xxxxx@db:5432/cath_local
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
在我的 docker shell 上,我指向 Dockerfile 目录,如果我从 y 路径运行 ls 命令,我会看到 manage.py 文件,但如果我运行:
docker-compose up
我得到这个错误:
web_1 | python:无法打开文件'manage.py':[Errno 2]没有这样的文件或目录 core_web_1 以代码 2 退出
为什么我的应用找不到与“docker-compose up”命令位置相同的 manage.py 文件?
PS:当我运行 docker-compose 命令时,没有创建 /code 文件夹。对吗?
提前非常感谢
【问题讨论】:
标签: python django docker docker-compose