69 lines
3.0 KiB
Markdown
69 lines
3.0 KiB
Markdown
# HY2XS
|
||
|
||
HY2XS — двухслойный install package для развёртывания на чистом Debian 12 amd64.
|
||
|
||
Состав baseline:
|
||
|
||
- production builder на Debian 12 amd64 создаёт один переносимый архив;
|
||
- install-only оркестратор на Bun + TypeScript поставляется на target как готовый compiled artifact;
|
||
- HY2XS admin поставляется в составе пакета как bundled fork;
|
||
- vanilla Hysteria2 скачивается с official upstream во время установки.
|
||
|
||
В baseline намеренно не входят target-side build, update, rollback, uninstall, Telegram bot delivery, billing и внешний контур выдачи access/profile.
|
||
|
||
## Структура репозитория
|
||
|
||
- [`tools/build`](tools/build) — production builder и packaging pipeline.
|
||
- [`orchestrator`](orchestrator) — исходники install-only оркестратора на Bun + TypeScript.
|
||
- [`package`](package) — skeleton итогового install package: entrypoint, templates, systemd units, package docs.
|
||
- [`apps`](apps) — исходники HY2XS admin fork.
|
||
- [`docs`](docs) — архитектурная документация и acceptance.
|
||
- [`hy2xs_implementation_plan-no_git`](hy2xs_implementation_plan-no_git) — roadmap и task breakdown.
|
||
- [`dist`](dist) — итоговые install archives, создаются builder'ом и не хранятся в git.
|
||
|
||
## Сборка
|
||
|
||
Production-сборка выполняется только на Debian 12 amd64:
|
||
|
||
```sh
|
||
PACKAGE_VERSION=0.1.0 ./tools/build/build.sh
|
||
```
|
||
|
||
Builder сам проверяет ОС, архитектуру, структуру проекта, lock-файлы, версии Go/Bun/Node.js/pnpm и при необходимости скачивает локальный toolchain.
|
||
|
||
Ожидаемый результат:
|
||
|
||
```text
|
||
dist/hy2xs-install-0.1.0.tar.gz
|
||
```
|
||
|
||
На target server не должно быть `bun install`, `pnpm install`, TypeScript transpilation, frontend build или Go build.
|
||
|
||
Подробности сборки: [`tools/build/README.md`](tools/build/README.md).
|
||
|
||
## Публикация
|
||
|
||
Целевой репозиторий:
|
||
|
||
```text
|
||
https://git.ext.flamy.studio/flamy_dev/HY2XS_flamy.git
|
||
```
|
||
|
||
Публиковать изменения нужно только после прохождения baseline acceptance, сборки оркестратора и smoke checks итогового пакета.
|
||
|
||
## Установка
|
||
|
||
На чистом Debian 12 target нужно распаковать архив и запустить от root:
|
||
|
||
```sh
|
||
./install.sh --non-interactive --domain example.com
|
||
```
|
||
|
||
Полезные baseline-флаги:
|
||
|
||
```sh
|
||
./install.sh --non-interactive --domain example.com --port 443 --ssh-port 22 --ui-port 8080
|
||
```
|
||
|
||
После установки создаётся `/etc/hysteria/post-install.env` с фактическими параметрами deploy-состояния.
|