Files
play-life/play-life-backend/ENV_SETUP.md
2025-12-29 20:01:55 +03:00

2.6 KiB
Raw Blame History

Настройка переменных окружения

Быстрый старт

  1. Скопируйте файл env.example в .env:

    cp env.example .env
    
  2. Откройте .env и заполните реальные значения:

    nano .env
    # или
    vim .env
    
  3. ВАЖНО: Файл .env уже добавлен в .gitignore и не будет попадать в git.

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

Обязательные (для работы приложения)

  • DB_HOST - хост базы данных (по умолчанию: localhost)
  • DB_PORT - порт базы данных (по умолчанию: 5432)
  • DB_USER - пользователь БД (по умолчанию: playeng)
  • DB_PASSWORD - пароль БД (по умолчанию: playeng)
  • DB_NAME - имя БД (по умолчанию: playeng)
  • PORT - порт сервера (по умолчанию: 8080)

Опциональные (для Telegram интеграции)

  • TELEGRAM_BOT_TOKEN - токен бота от @BotFather
  • TELEGRAM_CHAT_ID - ID чата для отправки сообщений

Использование в коде

Приложение автоматически читает переменные окружения через os.Getenv().

Для загрузки .env файла в локальной разработке можно использовать:

Вариант 1: Установить переменные вручную

export DB_PASSWORD=your_password
export TELEGRAM_BOT_TOKEN=your_token
go run main.go

Вариант 2: Использовать библиотеку godotenv (рекомендуется)

  1. Установить библиотеку:

    go get github.com/joho/godotenv
    
  2. Добавить в начало main():

    import "github.com/joho/godotenv"
    
    func main() {
        // Загрузить .env файл
        godotenv.Load()
        // ... остальной код
    }
    

Вариант 3: Использовать docker-compose

В docker-compose.yml уже настроена передача переменных окружения из .env файла.

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

  • Файл .env добавлен в .gitignore
  • Файл env.example содержит только шаблоны без реальных значений
  • Никогда не коммитьте .env в git
  • Используйте разные токены для dev/prod окружений