Skip to content

Секреты и переменные окружения

Проект использует Doppler для управления секретами и переменными окружения.

Требуемые переменные

ПеременнаяОписаниеОбязательная
API_URLURL бэкенд API (saas-api)Да
BASE_DOMAINДомен приложенияДа

Установка Doppler CLI

Документация: docs.doppler.com/docs/install-cli

bash
# macOS
brew install dopplerhq/cli/doppler

# Linux
curl -Ls https://cli.doppler.com/install.sh | sh

# Windows (через scoop)
scoop install doppler

После установки авторизуйтесь:

bash
doppler login

Настройка проекта

bash
doppler setup

При первом запуске выберите:

  • Project: saas-admin
  • Config: local (для разработки)

Примеры значений

Local (локальная разработка)

bash
API_URL=http://localhost:3001/api
BASE_DOMAIN=localhost

Dev (development окружение)

bash
API_URL=https://api.dev.happ.tools/api
BASE_DOMAIN=admin.dev.happ.tools

Prod (production окружение)

bash
API_URL=https://api.happ.tools/api
BASE_DOMAIN=admin.happ.tools

Где получить значения

API_URL

ОкружениеЗначениеИсточник
Localhttp://localhost:3001/apiЛокальный запуск saas-api
Devhttps://api.dev.happ.tools/apiDocker на dev сервере
Prodhttps://api.happ.tools/apiDocker на prod сервере

Как получить:

  • Local: Запустите saas-api локально на порту 3001
  • Dev/Prod: URL деплоится автоматически через Docker + Traefik

Генерация environment файлов

После настройки Doppler, сгенерируйте файлы окружения:

bash
# Для локальной разработки
npm run generate:env -- local

# Для dev окружения
npm run generate:env -- dev

# Для production
npm run generate:env -- prod

Команда загрузит секреты из Doppler и создаст файл src/environments/environment.ts.

Doppler Dashboard

  • Проект в Doppler: saas-admin
  • Управление секретами: Doppler Dashboard → Projects → saas-admin → Configs

Структура конфигов в Doppler

saas-admin/
├── local     # Локальная разработка
├── dev       # Development окружение
└── prod      # Production окружение

Добавление новых секретов

  1. Добавьте переменную в Doppler Dashboard для всех нужных конфигов (local/dev/prod)
  2. Обновите скрипт scripts/generate-env.script.ts для использования новой переменной
  3. Обновите интерфейс environment в src/environments/environment.ts
  4. Обновите эту документацию

Безопасность

Важно

  • Никогда не коммитьте реальные секреты в репозиторий
  • Файлы environment.ts генерируются динамически и не должны содержать production секретов в git
  • Используйте Doppler для безопасного хранения и передачи секретов

Troubleshooting

Ошибка "doppler: command not found"

Установите Doppler CLI:

bash
brew install dopplerhq/cli/doppler

Ошибка авторизации

Переавторизуйтесь в Doppler:

bash
doppler logout
doppler login

Ошибка "project not found"

Проверьте настройку проекта:

bash
doppler setup

И выберите правильный проект saas-admin.

SaaS Admin Documentation