Настройка

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

Основные переменные задаются в .env (локально) или в .env.server на продакшене (при использовании docker compose --env-file .env.server).

ПеременнаяОписание
DATABASE_URLURL подключения к PostgreSQL (например, postgresql://user:pass@host:5432/dbname).
REDIS_URLURL Redis (например, redis://localhost:6379).
JWT_SECRETСекрет для подписи JWT. На проде обязательно смените на свой.
S3_ENDPOINT / S3_ACCESS_KEY / S3_SECRET_KEY / S3_BUCKETПараметры S3-совместимого хранилища (MinIO, AWS S3, R2 и т.д.).
NEXT_PUBLIC_API_URLПубличный URL API для фронтенда и админки (например, https://api.pxlr.ru).
NEXT_PUBLIC_ADMIN_URLURL админ-панели (например, https://admin.pxlr.ru).
CORS_ORIGINРазрешённые origin для CORS (через запятую при нескольких).

База данных

API при старте ожидает, что PostgreSQL уже развёрнут и доступен по DATABASE_URL. Миграции/инициализация схемы обычно выполняются при первом запуске (см. скрипт init.sql в пакете API).

Redis

Redis используется для кэширования (например, списка схем) и для сессий/реального времени. Задайте REDIS_URL.

S3 (медиа)

Загрузки медиа сохраняются в S3-совместимое хранилище. Поддерживаются MinIO, AWS S3, Cloudflare R2 и др. Укажите endpoint, ключи доступа и имя bucket. Для локальной разработки с Docker часто используют MinIO из того же docker-compose.

Первый администратор

После установки в админке откройте /setup. Если в базе ещё нет пользователей, форма позволит создать первого администратора (email, имя, пароль). После этого вход только через /login.