• Как эффективно разрабатывать приложения на Python в Pycharm используя Docker?

    @puker-ti Автор вопроса
    Ну либо я очень плохо объясняю, либо предыдущий оратор меня никак не мог понять, либо еще что-то, но вот на часть вопросов я нашел ответ:
    • 0.1.
      Исходя из предыдущего ответа и судя по этой ссылке https://www.digitalocean.com/community/tutorials/d...
      afford you to port applications easily, scale fast and add another layer to your host's (i.e. droplets) security

      Добавление nginx в контейнер - - лишь еще одна прослойка для еще большего секьюрити, еще большей изоляции.

    • 1.
      Если у нас уже стоит docker-engine в системе, и мы хотим нашу же систему завести под провижнинг докер машины, то все по тем же докам
      https://docs.docker.com/machine/overview/
      https://docs.docker.com/machine/drivers/generic/
      делаем
      docker-machine create --driver=generic --generic-ip-address=localhost --generic-ssh-user=username machinename

      т.е. подключаемся через ssh к самому себе.
      Однако необоходимо проверить стоит ли в системе ssh сервер which sshd и если не стоит то поставить такой, например sudo apt-get install openssh-server
      Однако это еще не все, так же необходимо будет настроить возможность подключения через ssh без пароля.
      Возможно тут поможет ключ --generic-ssh-key для docker-machine create, но я с этим не разбирался, а через sudo visudo позволил своему пользователю делать всё без пароля, добавив строку username ALL=(ALL) NOPASSWD: ALL
      И теперь наконец у нас добавлена в docker-machine своя же система, и теперь в пайчарме выбираем внешний сдк, в списке докер машин, выбираем нашу и видим все контейнеры в системе.
      ...Однако пачарм все равно подекрикавет вс импорты красным

    • 2.
      судя по этим вопросам
      stackoverflow.com/questions/13715725/python-pdb-ex...
      stackoverflow.com/questions/9178751/use-pdb-set-tr...
      я так понял, что stdin чем то занят и там нет места нашему жалкому дебагеру. Из возможных решений:
      перенаправлять ввод пдб куда то еще, либо использовать другой отладчик, позволяющий это из коробки...вобще неудобно все както. Хотя если кто то сможет описать формально шаги как это сделать, желатьльно с ipdb - будет круто.

    • 3.
      https://realpython.com/blog/python/django-developm...
      вот тут помоему вполне адекватное дерево, если можете, накидайте репозиториев с хорошими проектами, где можно на это вживую посмотреть.
      ├── docker-compose.yml
      ├── nginx
      │   ├── Dockerfile
      │   └── sites-enabled
      │       └── django_project
      ├── production.yml
      └── web
          ├── Dockerfile
          ├── docker_django
          │   ├── __init__.py
          │   ├── apps
          │   │   ├── __init__.py
          │   │   └── todo
          │   │       ├── __init__.py
          │   │       ├── admin.py
          │   │       ├── models.py
          │   │       ├── templates
          │   │       │   ├── _base.html
          │   │       │   └── home.html
          │   │       ├── tests.py
          │   │       ├── urls.py
          │   │       └── views.py
          │   ├── settings.py
          │   ├── urls.py
          │   └── wsgi.py
          ├── manage.py
          ├── requirements.txt
          └── static
              └── main.css


    Ответ написан
    Комментировать
  • Почему Pycharm не видит docker?

    @puker-ti
    нужен docker-machine а не docker
    https://docs.docker.com/machine/install-machine/
    curl -L https://github.com/docker/machine/releases/downloa... -s`-`uname -m` > /usr/local/bin/docker-machine && \
    chmod +x /usr/local/bin/docker-machine
    Ответ написан
    Комментировать