Я использую Docker во время разработки.Я заметил, что не могу запустить dev-сервер с помощью команды docker-compose up
, но могу с помощью docker-compose run
Вот мой Dockerfile:
FROM python:3.6
WORKDIR /opt/lib
RUN pip install --upgrade pip
COPY requirements.txt ./
RUN pip install -r requirements.txt
WORKDIR /opt/web
Вот docker-compose.yaml
version: '2'
services:
web:
build: ./web/
working_dir: /opt/web
ports:
- "3000:3000"
volumes:
- ./web:/opt/web
user: 1000:1000
depends_on:
- database
env_file: env
command: python manage.py runserver 0.0.0.0:3000
database:
image: mdillon/postgis:9.6
ports:
- "5432:5432"
volumes:
- ./database/data:/var/lib/postgresql/data
Теперь, если я запускаю docker-compose up
, запускается только база данных:
Но при docker-compose run
сервер запускается нормально:
Если я изменю команду docker-compose.yml> services> web> на /usr/local/bin/gunicorn project.wsgi:application -w 4 -b :3000
, она также работает нормально, но мне нужен автозапуск при изменении файлов
Я использую Docker для MacOS Version 18.03.1-ce-mac65 (24312)
, Django==1.10
Я попытался восстановить заводские настройки, но это не помогло.
Можете ли вы помочь мне с этим?
РЕДАКТИРОВАТЬ 1:
Другие команды manage.py, такие как migrate , работают нормально