Задать вопрос
Starck43
@Starck43
Full-stack разработчик (Python, React)

Переменные окружения в продакшн?

Добрый день.

Первый раз пытаюсь выложить правильно проект на сервер хостера и уткнулся в непонимание где все-таки хранить собственные переменные, чтобы они попали в виртуальное окружение приложения или сессии.

На локалке я создал файл в корне проекта .env и в настройках получаю из окружения свои переменные. Также я полагал и на хостинге. Только env со своим содержимым надо настроить до развертывания проекта с гита, а в гитигнор прописать локальный env.
Но увидел на форуме следующее и опять засомневался как правильно:

So how do you add .env to your server since it will be in .gitignore – Martins Jun 30 '19 at 0:35

@Martins Server should not be using .env, you should inject those environment variables directly (e.g. code deployment) – Aamir Adnan Jul 1 '19 at 14:50


Развейте мои сомнения, плиз, как правильно понимать данную рекомендацию, которая противоречит моим представлениям до. Спасибо.
  • Вопрос задан
  • 807 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
ulkoart
@ulkoart
я добавляю .env в гитигнор и делаю env.skeleton (добавляю в гит) где описываю что вобще должно быть в .env.
Ответ написан
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Если конфигураций много, то удобнее держать их в файлах .py:
dev.config.py # в .gitignore
test.config.py # в .gitignore
config.py # болванка

В виртуальном окружении просто один параметр dev/prod, или аргументом при запуске cron/systemd или как там ты запускаешь.
Если все-же .env, то можно делать аналогично:
dev.env
prod.env

Заполняешь (настраиваешь) болванки непосредственно на сервере при развертывании.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы