【发布时间】:2019-06-04 22:54:24
【问题描述】:
我正在学习 platzi 高级 django 课程。本课程使用 docker-compose,问题是,当我使用 bash 调用“$docker-compose -f local.yml up”时,它会提示我“ModuleNotFoundError : No module named 'cride'”
我不知道为什么会发生这个错误
version: '3'
volumes:
local_postgres_data: {}
local_postgres_data_backups: {}
services:
django: &django
build:
context: .
dockerfile: ./compose/local/django/Dockerfile
image: cride_local_django
depends_on:
- postgres
volumes:
- /c/users/jeanpython/desktop/cride/cride:/cride
env_file:
- ./.envs/.local/.django
- ./.envs/.local/.postgres
ports:
- "8000:8000"
command: /start
postgres:
build:
context: .
dockerfile: ./compose/production/postgres/Dockerfile
image: cride_production_postgres
volumes:
- local_postgres_data:/var/lib/postgresql/data
- local_postgres_data_backups:/backups
env_file:
- ./.envs/.local/.postgres
redis:
image: redis:3.2
celeryworker:
<<: *django
image: cride_local_celeryworker
depends_on:
- redis
- postgres
ports: []
command: /start-celeryworker
celerybeat:
<<: *django
image: cride_local_celerybeat
depends_on:
- redis
- postgres
ports: []
command: /start-celerybeat
flower:
<<: *django
image: cride_local_flower
ports:
- "5555:5555"
command: /start-flower
我希望输出是“在http://0.0.0.0:8000/ 开始开发服务器”
【问题讨论】:
-
volumes:指令隐藏了 Dockerfile 所做的大部分设置工作,并可能导致此类问题。提供至少包含 Dockerfile 的 minimal reproducible example(并将docker-compose.yml减少到基本容器以演示问题)会有所帮助。 -
问题是……不知道bug在哪里。
标签: django postgresql docker docker-compose docker-toolbox