Перейти к основному содержимому

Переменные окружения

Автоматические (создаются платформой)​

Эти переменные уже доступны в контейнерах — не нужно ничего настраивать:

ПеременнаяЗначениеОписание
DATABASE_URLpostgresql://...Полная строка подключения
DB_HOSTpostgres-main-pooler...Хост PostgreSQL
DB_PORT5432Порт
DB_NAMEproject-NNИмя базы
DB_USERproject-NNПользователь
DB_PASSWORD...Пароль
ALLOWED_HOSTSproject-NN.simple-env.siteДля Django
CORS_ALLOWED_ORIGINShttps://project-NN...Для Django CORS
VITE_API_URLhttps://project-NN.../apiДля Vite
PYTHONDONTWRITEBYTECODE1Не создавать .pyc
PYTHONUNBUFFERED1Немедленный вывод логов

Несекретные (в backend/deploy.yaml)​

Добавляй в секцию backend.env:

backend:
env:
DJANGO_SETTINGS_MODULE: "config.settings.production"
CELERY_TASK_ALWAYS_EAGER: "False"
EMAIL_BACKEND: "django.core.mail.backends.console.EmailBackend"

Секретные (через Kubernetes Secret)​

Для SECRET_KEY, API ключей, паролей внешних сервисов — напиши преподавателю список нужных переменных и их значения. Преподаватель создаст Secret в твоём namespace. Студент не имеет прав создавать секреты напрямую.

Пример сообщения преподавателю:

Нужен Secret app-secrets в project-NN с переменными:
SECRET_KEY = <сгенерируй случайную строку>
STRIPE_API_KEY = sk_test_...

В коде читай как обычные env:

import os
SECRET_KEY = os.environ.get('SECRET_KEY', 'fallback-for-local-dev')
.env локально

Для локальной разработки создай .env файл (он в .gitignore — не коммитится):

SECRET_KEY=local-dev-secret
DATABASE_URL=postgresql://app:app@localhost:5432/app

Используй python-dotenv или django-environ для загрузки.