Docker Compose: отладка кода Python внутри контейнеров, запущенных с использованием 'docker-compose up' - PullRequest
0 голосов
/ 03 мая 2019

Ситуация: я использую Pycharm & Webstorm в качестве моих редакторов.

Я настроил два контейнера докеров, один для API, один для обслуживания кода пользовательского интерфейса.

Когда я пытаюсь использовать 'docker-compose up 'из терминала, оба контейнера запускаются правильно, но я не могу отладить свой код API в Pycharm.

Я попытался настроить docker-compose & python в качестве удаленного интерпретатора из Pycharm Preferences & Configuration, ноон запрашивает у меня путь к скрипту (я добавил путь к моему manage.py), но затем он запускает только контейнер api и не запускает контейнер nginx или команду memcached (поскольку я считаю, что python3.5 запускается как PID 1, поэтомуbash не работает)

Итак, используя мой docker-compose.yml, как отлаживать код в Pycharm.

Мой docker-compose.yml прикреплен ниже:

version: '2.0'
services:
  api:
    container_name: api
    image: api-image
    command: bash -c "nohup /usr/bin/memcached -p 11211 -u memcache -m 64 & disown && python3.5 manage.py runserver 0.0.0.0:3031"
    volumes:
      - api-code:/var/www/api-code
      - configs:/var/www/configs
    ports:
          - "8080:3031"
    networks:
          - my_net
    tty: true
    stdin_open: true
  nginx-serve:
    container_name: serve
    image: nginx-image
    volumes:
      - ui-dist:/usr/share/nginx/html
    ports:
          - "80:80"
    logging:
      driver: "none"
    networks:
          - my_net
    tty: false
    stdin_open: false
networks:
  my_net:
    driver: bridge
...