Полный перечень параметров файла config.yaml, сгруппированный по блокам.
Правила переопределения переменными окружения, список обязательных параметров
и типовые задачи настройки описаны в разделе Конфигурация.
У параметров без значения по умолчанию приведён пример допустимого значения: он показывает форму записи, а не рекомендуемую величину.
server
Сетевые параметры, лимиты и доверие обратному прокси.
Подробнее — в разделах Обратный прокси и Мониторинг.
| Параметр | Описание |
|---|---|
listen | Адрес и порт, на которых сервер принимает HTTP-запросы. По умолчанию: :8080 |
public_base_url | Внешний адрес инстанса. Подставляется в адреса, которые сервер сообщает клиентам. По умолчанию: нет. Пример: https://galleon.example.com |
max_upload_size | Предельный размер файла, загружаемого в репозиторий. Значение 0 снимает ограничение, и тогда фактический предел задаёт обратный прокси.По умолчанию: 0.Пример: 10GB |
tls.cert_file | Путь к файлу сертификата в формате PEM. Внутри файла сначала идёт сертификат сервера, затем промежуточные сертификаты. TLS включается, только если задан и tls.key_file (TLS).По умолчанию: нет. Пример: /etc/galleon/tls/fullchain.pem |
tls.key_file | Путь к файлу закрытого ключа в формате PEM. Ключи с парольной фразой не принимаются. TLS включается, только если задан и tls.cert_file.По умолчанию: нет. Пример: /etc/galleon/tls/privkey.pem |
max_control_body | Предельный размер тела запроса к API управления — создания репозиториев, пользователей, ролей. По умолчанию: 256K |
max_query_value_bytes | Предельная длина одного значения в строке запроса, после знака ?. Значение 0 снимает ограничение.По умолчанию: 4096 |
max_header_bytes | Предельный суммарный размер заголовков запроса в байтах. По умолчанию: 1048576 |
read_timeout | Предельное время чтения запроса целиком, вместе с телом. Значение 0s снимает ограничение, чтобы медленные загрузки успевали завершиться.По умолчанию: 0s.Пример: 30m |
read_header_timeout | Предельное время чтения заголовков. Защищает от соединений, которые открыты, но запрос не присылают. По умолчанию: 10s |
idle_timeout | Время, после которого простаивающее keep-alive-соединение закрывается. По умолчанию: 120s |
trusted_proxies | Адреса обратных прокси в нотации CIDR или отдельными IP-адресами. Заголовкам запросов от них можно доверять. По умолчанию: [].Пример: ["10.0.0.0/8"] |
proxy_auth.header | Заголовок, в котором обратный прокси передаёт общий секрет. По умолчанию: X-Origin-Token |
proxy_auth.secret_env | Имя переменной окружения, из которой читается этот секрет. По умолчанию: нет. Пример: GALLEON_ORIGIN_TOKEN |
trust_forwarded_headers | Учитывать заголовки X-Forwarded-Host и X-Forwarded-Proto при построении адресов для клиентов.По умолчанию: false |
monitoring_allowlist | Адреса, которым доступны health-эндпоинты. Остальным они отвечают как несуществующий путь. По умолчанию: ["127.0.0.0/8", "::1/128"].Пример: ["127.0.0.0/8", "10.0.0.0/8"] |
database
Подключение к PostgreSQL и пулы соединений.
При изменении размеров пулов пересчитайте max_connections базы данных:
нужно max_open_conns × 2 + registry_max_open_conns + superuser_reserved_connections.
Откуда берутся слагаемые, объяснено в разделе Конфигурация.
| Параметр | Описание |
|---|---|
host | Адрес сервера базы данных. По умолчанию: localhost.Пример: postgres.internal |
port | Порт сервера базы данных. По умолчанию: 5432.Пример: 6432 |
user | Имя роли базы данных. По умолчанию: нет. Пример: galleon |
dbname | Имя базы данных. По умолчанию: нет. Пример: galleon |
password_env | Имя переменной окружения с паролем. Без этого ключа подключение выполняется без пароля. По умолчанию: нет. Пример: GALLEON_DATABASE_PASSWORD |
sslmode | Режим TLS-подключения к базе данных: disable, require, verify-ca или verify-full.По умолчанию: disable.Пример: verify-full |
connect_timeout | Предельное время установления соединения с базой данных. По умолчанию: 5s |
migrate_wait | Сколько ждать базу данных перед миграциями, если она ещё поднимается. 0 — не ждать и завершиться сразу.По умолчанию: 0s.Пример: 5m |
max_open_conns | Размер каждого из двух основных пулов соединений. По умолчанию: 40.Пример: 80 |
max_idle_conns | Число соединений, которые эти пулы держат открытыми в простое. По умолчанию: 5 |
registry_max_open_conns | Размер отдельного пула соединений для работы с образами контейнеров. По умолчанию: 25.Пример: 40 |
statement_timeout | Предельное время выполнения одного SQL-запроса. На миграции не распространяется. По умолчанию: 30s |
lock_timeout | Предельное время ожидания блокировки в базе данных. По умолчанию: 10s |
idle_in_transaction_session_timeout | Предельное время простоя внутри открытой транзакции. По умолчанию: 60s |
max_conn_lifetime | Время жизни соединения, после которого оно пересоздаётся. По умолчанию: 30m |
max_conn_idle_time | Время простоя соединения, после которого оно закрывается. По умолчанию: 5m |
storage
Файловое хранилище артефактов. Ключи задаются для именованного хранилища; backend с именем default обязателен.
Устройство каталога описано в разделе Хранилище и сборка мусора.
| Параметр | Описание |
|---|---|
type | Тип хранилища. Поддерживается только local.По умолчанию: нет. Пример: local |
local.root | Корневой каталог хранилища. По умолчанию: нет. Пример: /var/lib/galleon/data |
security
Шифрование хранимых секретов.
Подробнее — в разделе Секреты и ключ шифрования.
| Параметр | Описание |
|---|---|
secret_key_file | Путь к файлу ключей шифрования. Параметр обязателен: без него сервер не запускается. По умолчанию: нет. Пример: /etc/galleon/secret-key.yaml |
auth
Первый администратор, кеш проверки паролей и сессии веб-интерфейса.
Подробнее — в разделе Первичная настройка.
| Параметр | Описание |
|---|---|
bootstrap_admin.username | Имя первого администратора. По умолчанию: нет. Пример: admin |
bootstrap_admin.password_env | Имя переменной окружения с паролем первого администратора. По умолчанию: нет. Пример: GALLEON_BOOTSTRAP_ADMIN_PASSWORD |
bootstrap_admin.password_hash | Bcrypt-хеш пароля. Имеет приоритет над password_env.По умолчанию: нет. Пример: $2a$12$LQv3c1yqBWVHxkd0... |
bootstrap_admin.force_password_change | Требовать смену пароля при первом входе. По умолчанию: false |
credential_cache_ttl | Сколько результат проверки пароля хранится в памяти. Значение 0s отключает кеш, и пароль проверяется заново на каждый запрос клиента.По умолчанию: 60s.Пример: 0s |
session_max_lifetime | Предельное время жизни сессии веб-интерфейса независимо от активности. По умолчанию: 168h.Пример: 24h |
session_idle_timeout | Время бездействия, после которого сессия завершается. По умолчанию: 168h.Пример: 8h |
oci
Параметры скачивания образов контейнеров из внешних реестров.
| Параметр | Описание |
|---|---|
proxy.blob_idle_window | Допустимая пауза в передаче данных при скачивании слоя из внешнего реестра. После неё соединение обрывается. По умолчанию: 60s |
proxy.db_mirror_timeout | Предельное время записи метаданных скачанного слоя в базу данных. По умолчанию: 60s |
gc
Сборка мусора в хранилище. Семантика описана в разделе Хранилище и сборка мусора.
| Параметр | Описание |
|---|---|
auto | Плановые циклы по расписанию. Ручной запуск работает независимо от этого значения. По умолчанию: true.Пример: false |
interval | Пауза между плановыми циклами. По умолчанию: 5m.Пример: 15m |
grace_period | Минимальный возраст файла, допускающий его удаление. По умолчанию: 24h.Пример: 5m |
batch_size | Сколько файлов-кандидатов отбирается за один запрос к базе данных. По умолчанию: 500.Пример: 1000 |
max_duration | Предельная длительность одного цикла. Остаток обрабатывает следующий цикл. По умолчанию: 15m.Пример: 5m |
index
Фоновое построение индексов репозиториев — служебных файлов, которые Galleon генерирует сам: списков версий, метаданных пакетов.
Число обработчиков подбирается по нагрузке: чем их больше,
тем быстрее индексы обновляются после публикаций.
Значение workers: 0 полностью останавливает фоновое построение индексов
и в промышленной установке задаваться не должно.
| Параметр | Описание |
|---|---|
workers | Число обработчиков очереди построения. По умолчанию: 4.Пример: 8 |
poll_interval | Пауза между опросами очереди заданий. По умолчанию: 1s.Пример: 5s |
max_backoff | Предельная задержка перед повтором задания, завершившегося ошибкой. По умолчанию: 1h.Пример: 15m |
lease_duration | Время, на которое обработчик забирает задание. Если он не завершил работу, задание возвращается в очередь. По умолчанию: 5m.Пример: 10m |
backfill_on_start | Достраивать недостающие индексы при запуске сервера. По умолчанию: true.Пример: false |
logging
Журнал сервера.
Подробнее — в разделе Логирование.
| Параметр | Описание |
|---|---|
level | Порог логов Galleon: debug, info, warn или error.По умолчанию: info.Пример: debug |
format | Формат записей журнала. По умолчанию: json.Пример: text |
registry_level | Отдельный порог для записей о работе с образами контейнеров. По умолчанию: warn.Пример: info |
proxy
Защита исходящих запросов proxy-репозиториев.
Адреса сервисов метаданных облачных провайдеров заблокированы всегда, независимо от этих настроек.
| Параметр | Описание |
|---|---|
ssrf.block_private_networks | Запрещать обращения proxy-репозиториев к приватным сетям. По умолчанию: true.Пример: false |
ssrf.allowlist.ips | Адреса, разрешённые в обход запрета. По умолчанию: [].Пример: ["10.0.0.10"] |
ssrf.allowlist.domains | Домены, разрешённые в обход запрета. По умолчанию: [].Пример: ["registry.internal.example.com"] |