Files
ermnvldmr.com/services/docs/content/ru/apex/reference/environment.md
T
deytenit b3638f4d63 fix: cyrillic fonts, dev certs, page head, and ru-text typography (#67)
🤖 PR generated for branch `fix/cyrillic-fonts-dev-certs-and-page-head`.

### Changes Summary
- **Fonts**: Add Cyrillic glyph subsets for Lato, EB Garamond, and Fira
Code.
- **Dev**: Support remote Root CA and encrypted dev CA key in
`.env.dev`.
- **UI & Kits**: Add size variant to `Breadcrumbs` component and enlarge
`PageHead` breadcrumbs with tuned collapse scroll threshold.
- **ESLint**: Add `no-hanging-particles` i18n & markdown typography rule
with auto-fixer.
- **Content & i18n**: Apply `ru-text` editorial and typography polish
(em dashes, number ranges, «ё» restoration, non-breaking spaces) across
`services/www` and `services/docs`.
2026-10-25 15:21:09 +03:00

9.1 KiB

title, description, weight
title description weight
Справочник переменных окружения Переменные окружения APEX_*: источники определения и область применения. 33

Пространство имён APEX_* охватывает всю конфигурацию фреймворка. Переменные формируются на четырёх уровнях: при сборке окружения процесса действиями оркестрации значения из более поздних слоёв переопределяют предыдущие.

node.env — идентичность

Закоммичен в корне репозитория; считывается при разрешении идентичности узла. Фреймворк не привязан к доменной структуре: узел объявляет собственный FQDN и публичное имя хоста. Концепция кластера отсутствует, а формат FQDN ничем не ограничен.

Переменная Значение Примечания
APEX_NODE_FQDN Действительный FQDN узла (маршрутизация Traefik Host()) Если не задан, используется имя хоста ОС (с выводом предупреждения).
APEX_NODE_HOST Публичное имя хоста узла (резервное копирование --host, instance для наблюдаемости/уведомлений) По умолчанию совпадает с APEX_NODE_FQDN. Первая часть доменного имени используется как короткое имя name.
APEX_SUBNET Сеть /24 узла для сети direct Обязательна, единственный источник подсети. Если не задана, запуск завершается с кодом 66.
APEX_GIT_AUTHOR_NAME Имя автора для коммитов capture-up По умолчанию — apex [bot].
APEX_GIT_AUTHOR_EMAIL Email автора для коммитов capture-up По умолчанию — apex@localhost.

apex.env — закоммиченные скаляры

Закоммичен в compositions/apex/; не содержит секретных данных.

Переменная Значение Примечания
APEX_TRAEFIK_DIRECT_IP Якорный IP краевого прокси в подсети узла Обязательна для основной композиции (?error).
APEX_RESTIC_REPOSITORY Локатор репозитория резервных копий Обязательна (?error).
APEX_RESTIC_COMPRESSION Уровень сжатия restic Опциональна; по умолчанию max (стандарт флота: backup/run также принудительно передаёт --compression max).
APEX_RESTIC_AWS_REGION Регион бэкенда S3 Опциональна; по умолчанию us-east-1.
APEX_RESTIC_AWS_ENDPOINT URL эндпоинта бэкенда S3 Опциональна; по умолчанию не задан (AWS S3). Задаётся для любого S3-совместимого хранилища сторонних провайдеров.
APEX_LOKI_PUSH_URL URL приёма Loki для агента Alloy (loki.write) Требуется для профиля alloy (?error).
APEX_PROM_PUSH_URL URL remote_write Prometheus для агента Alloy Требуется для профиля alloy (?error).
APEX_OBS_BASIC_AUTH_USER Пользователь basic-auth для отправки метрик наблюдаемости Требуется для профиля alloy (?error).
COMPOSE_PROFILES Подключаемые основные профили (adguard, xray, alloy) Может быть пустой; профиль manual активируется через backup/run, а не здесь.
TZ Часовой пояс контейнера Опциональна; по умолчанию Etc/UTC.

.env — секреты

Не коммитится в репозиторий; представляет собой символьную ссылку в хранилище первого уровня. Список ключей каждого узла задокументирован в SECRETS.md.

Переменная Значение Примечания
APEX_UID, APEX_GID, APEX_SHARED_GID Идентификаторы пользователя noroot для проекта Внедряются автоматически через tiers/useradd; обязательны (?error).
APEX_RESTIC_PASSWORD Пароль репозитория резервных копий Обязательна (?error).
APEX_RESTIC_AWS_ACCESS_KEY_ID, APEX_RESTIC_AWS_SECRET_ACCESS_KEY Учётные данные объектного хранилища Обязательны (?error).
APEX_TRAEFIK_CF_DNS_API_TOKEN Токен DNS-challenge для ACME Обязательна (?error).
APEX_TRAEFIK_ACME_EMAIL Email учётной записи ACME Обязательна (?error).
APEX_OBS_BASIC_AUTH_PASS Пароль basic-auth для отправки метрик и логов наблюдаемости Требуется для профиля alloy (?error).
APEX_LOKI_BASIC_AUTH Пользователи htpasswd для центрального шлюза Loki/Prometheus Не требуется для основной композиции. Задаётся только на узле, принимающем данные наблюдаемости.

Экспорты движка — ctx.vars()

Вычисляются движком при запуске; экспортируются в docker compose действиями оркестрации и доступны при рендеринге любого шаблона. Не задавайте их вручную.

Переменная Значение
APEX_NODE_HOST Публичное имя хоста узла (node.host); используется для --host в резервном копировании и как instance для наблюдаемости и уведомлений.
APEX_NODE_FQDN Действительный FQDN узла (node.fqdn); используется для правил краевой маршрутизации.
APEX_SUBNET Подсеть узла.
APEX_COMMONS Абсолютный путь к каталогу commons ($APEX_COMMONS/apex — лаунчер, используемый в crontab и юнитах systemd).
APEX_REPO_ROOT Абсолютный путь к корню репозитория узла.
APEX_TIER1, APEX_TIER2, APEX_TIER3 Каталог данных основного проекта для каждого уровня хранения.
APEX_TIER1_SHARED, APEX_TIER2_SHARED, APEX_TIER3_SHARED Общая область для каждого уровня.
APEX_TIER_ROOT1, APEX_TIER_ROOT2, APEX_TIER_ROOT3 Корневые каталоги уровней хранения.

Note

Для переменных, отмеченных выше как ?error, проверка выполняется на уровне общей основной композиции: docker compose прерывает разбор конфигурации, если хотя бы одна из них не задана. Благодаря этому пропущенный секрет приводит к немедленной и понятной ошибке.

Ряд переменных основной композиции использует конструкцию ${VAR:-default}, поэтому их указывать необязательно, а значения по умолчанию можно переопределить для конкретного узла: TZ (Etc/UTC), APEX_RESTIC_AWS_REGION (us-east-1), APEX_RESTIC_AWS_ENDPOINT (пусто), APEX_RESTIC_COMPRESSION (max) и APEX_ENCLAVE_SUBNET (198.18.0.0/16 — разрешённый диапазон IP-адресов в ipallowlist для маршрутов к панелям Traefik и AdGuard).


См. также: