Files
HY2XS_flamy/docs/09-post-install-env.md
T

93 lines
2.9 KiB
Markdown

# Post-install env
## Цель документа
Зафиксировать `post-install.env` как компактный deploy reference file после первичной установки.
## Зачем нужен файл
После первичной установки оператору нужна одна точка, где видно:
- какой пакет был установлен
- какой build артефакт использован
- какой стек оркестратора применён
- какая версия Hysteria реально установилась
- какой fork/build UI разложен на target
- какие базовые параметры сети и портов заданы
Именно для этого создаётся `post-install.env`.
## Чего файл не делает
Этот файл:
- не делает оркестратор update-manager'ом
- не гарантирует автоматическое применение изменений
- не заменяет runtime-конфиги
- не превращает target в builder
## Рекомендуемый путь
```bash
/etc/hysteria/post-install.env
```
## Минимальный набор переменных
### Deploy / package
- `DEPLOY_TARGET_OS`
- `DEPLOY_TIMESTAMP`
- `PACKAGE_NAME`
- `PACKAGE_BUILD_ID`
- `PACKAGE_VERSION`
### Orchestrator
- `ORCH_SOURCE_STACK=bun-typescript`
- `ORCH_BUILD_MODE`
- `ORCH_BUILD_ID`
- `ORCH_ENTRYPOINT`
### Общие
- `DEPLOY_DOMAIN`
- `SSH_PORT`
### Hysteria
- `HY2_SOURCE=official-upstream`
- `HY2_VERSION`
- `HY2_LISTEN_HOST`
- `HY2_PORT`
- `HY2_AUTH_MODE`
- `HY2_AUTH_URL`
- `HY2_TRAFFIC_STATS_LISTEN`
- `HY2_OBFS_TYPE`
- `HY2_OBFS_PASSWORD`
- `HY2_BANDWIDTH_UP_Mbps`
- `HY2_BANDWIDTH_DOWN_Mbps`
- `HY2_IGNORE_CLIENT_BANDWIDTH`
- `HY2_CONFIG_PATH`
### HY2XS admin
- `HUI_ENABLED`
- `HUI_FORK_REF`
- `HUI_BUILD_ID`
- `HUI_BIND_HOST`
- `HUI_PORT`
- `HUI_INSTALL_DIR`
- `HUI_DATA_DIR`
## Как работать с файлом
Правильная модель:
1. оркестратор создаёт файл при первичной установке
2. оператор использует файл как reference/source-of-truth
3. при необходимости оператор вручную переносит изменения в реальные рабочие конфиги
4. затем оператор применяет изменения документированным способом
## Что нельзя делать
- сваливать туда временный мусор
- считать, что edit env автоматически меняет runtime
- использовать файл как замену настоящей конфигурации сервисов
## Пример
См. [examples/post-install.env.example](examples/post-install.env.example).