Джанго и Докер: Должны ли мы использовать python virtualenv - PullRequest
0 голосов
/ 07 марта 2019

Я подумываю использовать докер для django.

Поскольку этот образ докера будет эксклюзивным для конкретного проекта django, можно ли просто просто установить все в docker вместо создания virtualenv, а затем установить всетребуемые django и связанные с ними пакеты, использующие pip

Так что является лучшим и безопасным способом, если вы хотите придерживаться докера для проектов django.

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Вы правы в том, что вам не нужна виртуальная среда внутри контейнера django.

Если вы всегда используете pip и сохраняете требования в файле require.txt, вы можете использовать это для инициализации виртуальной среды.среда для разработки без докера, а также для настройки контейнера докера:

Чтобы уменьшить размер контейнера, удалите кэш pip после установки:

FROM python:3.6.7-alpine3.8

...

RUN pip3.6 install -U pip setuptools \
    && pip3.6 install -r requirements.txt \
    && pip3.6 install gunicorn \. # or uwsgi or whatever
    && rm -rf /root/.cache
0 голосов
/ 07 марта 2019

Контейнеры Docker обеспечивают уже изолированную среду, которая аналогична цели virtualenv.Таким образом, если в контейнере Docker запущено только одно приложение, его можно использовать без другого уровня, который принесет virtualenv.Лично я не помню, чтобы приложение Django использовало с virtualenv в контейнере.

...