Docker -композиция Django Конфигурация супервизора - PullRequest
0 голосов
/ 15 марта 2020

Я хотел бы запустить некоторые программы, когда запущено мое приложение django. Вот почему я выбираю супервизор. Я настроил свой docker -композит и Dockerfile, например:

Dockerfile:

FROM python:3.6
ENV PYTHONUNBUFFERED 1
# some of project settings here
ADD supervisord.conf /etc/supervisord.conf
ADD supervisor-worker.conf /etc/supervisor/conf.d/
CMD ["/usr/local/bin/supervisord", "-c", "/etc/supervisord.conf"]

docker -композит:

  api:
    build: .
    command: bash -c "python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:8000"
    restart: unless-stopped
    container_name: project
    volumes:
      - .:/project
    ports:
      - "8000:8000" 
    network_mode: "host"

supervisord.conf

[supervisord]
nodaemon=true

[include]
files = /etc/supervisor/conf.d/*.conf

[supervisorctl]

[inet_http_server]
port=*:9001
username=root
password=root

Так что моя проблема в том, что когда я запускаю проект docker -compose и другие зависимости (postgresql, redis) работают нормально, но супервизор не работает. Когда я запускаю команду «supervisord» внутри контейнера, она работает. Но при запуске это не работает.

...