3.5 KiB
3.5 KiB
Конфигурация
Переменные окружения
Quoter использует следующие переменные окружения для настройки:
Обязательные переменные
| Переменная | Описание | Пример |
|---|---|---|
REDIS_URL |
URL для подключения к Redis | redis://localhost:6379 |
CORE_URL |
URL для подключения к API ядра | https://api.example.com/graphql |
STORJ_ACCESS_KEY |
Ключ доступа к Storj S3 | your-storj-access-key |
STORJ_SECRET_KEY |
Секретный ключ Storj S3 | your-storj-secret-key |
AWS_ACCESS_KEY |
Ключ доступа к AWS S3 | your-aws-access-key |
AWS_SECRET_KEY |
Секретный ключ AWS S3 | your-aws-secret-key |
Опциональные переменные
| Переменная | Описание | По умолчанию |
|---|---|---|
PORT |
Порт для запуска сервера | 8080 |
STORJ_END_POINT |
Endpoint Storj S3 | https://gateway.storjshare.io |
STORJ_BUCKET_NAME |
Имя bucket в Storj | discours-io |
AWS_END_POINT |
Endpoint AWS S3 | https://s3.amazonaws.com |
RUST_LOG |
Уровень логирования | info |
Пример .env файла
# Redis
REDIS_URL=redis://localhost:6379
# Core API
CORE_URL=https://api.example.com/graphql
# Storj S3
STORJ_ACCESS_KEY=your-storj-access-key
STORJ_SECRET_KEY=your-storj-secret-key
STORJ_END_POINT=https://gateway.storjshare.io
STORJ_BUCKET_NAME=discours-io
# AWS S3
AWS_ACCESS_KEY=your-aws-access-key
AWS_SECRET_KEY=your-aws-secret-key
AWS_END_POINT=https://s3.amazonaws.com
# Server
PORT=8080
RUST_LOG=info
Настройка Redis
Минимальная конфигурация Redis
# redis.conf
maxmemory 2gb
maxmemory-policy allkeys-lru
save 900 1
save 300 10
save 60 10000
Проверка подключения
redis-cli ping
Настройка S3
Storj S3
- Создайте аккаунт на Storj
- Создайте API ключи в консоли
- Создайте bucket для файлов
- Настройте CORS для bucket:
{
"CORSRules": [
{
"AllowedOrigins": ["*"],
"AllowedMethods": ["GET", "POST", "PUT", "DELETE"],
"AllowedHeaders": ["*"],
"ExposeHeaders": ["ETag"]
}
]
}
AWS S3
- Создайте IAM пользователя с правами S3
- Создайте bucket для файлов
- Настройте CORS аналогично Storj
Логирование
Уровни логирования
error- только ошибкиwarn- предупреждения и ошибкиinfo- информационные сообщения, предупреждения и ошибкиdebug- отладочная информацияtrace- максимальная детализация
Примеры
# Только ошибки
RUST_LOG=error cargo run
# Информационные сообщения
RUST_LOG=info cargo run
# Отладка
RUST_LOG=debug cargo run
Проверка конфигурации
Запустите сервер и проверьте логи:
RUST_LOG=info cargo run
Успешный запуск должен показать:
[INFO] Started
[WARN] caching AWS filelist...
[WARN] cached 1234 files