2.6 KiB
2.6 KiB
Настройка переменных окружения
Быстрый старт
-
Скопируйте файл
env.exampleв.env:cp env.example .env -
Откройте
.envи заполните реальные значения:nano .env # или vim .env -
ВАЖНО: Файл
.envуже добавлен в.gitignoreи не будет попадать в git.
Переменные окружения
Обязательные (для работы приложения)
DB_HOST- хост базы данных (по умолчанию: localhost)DB_PORT- порт базы данных (по умолчанию: 5432)DB_USER- пользователь БД (по умолчанию: playeng)DB_PASSWORD- пароль БД (по умолчанию: playeng)DB_NAME- имя БД (по умолчанию: playeng)PORT- порт сервера (по умолчанию: 8080)
Опциональные (для Telegram интеграции)
TELEGRAM_BOT_TOKEN- токен бота от @BotFatherTELEGRAM_CHAT_ID- ID чата для отправки сообщений
Использование в коде
Приложение автоматически читает переменные окружения через os.Getenv().
Для загрузки .env файла в локальной разработке можно использовать:
Вариант 1: Установить переменные вручную
export DB_PASSWORD=your_password
export TELEGRAM_BOT_TOKEN=your_token
go run main.go
Вариант 2: Использовать библиотеку godotenv (рекомендуется)
-
Установить библиотеку:
go get github.com/joho/godotenv -
Добавить в начало
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 окружений