К содержимому
gtcnsl
EN RU

Поддерживаемые платформы

gtcnsl — один статический бинарник без зависимостей рантайма. Вот архитектуры, под которые он собирается, и системы, на которых протестирован.

Актуально для v1.6.0

Архитектуры

Релизы выходят под три Linux-архитектуры с именами gtcnsl-v1.6.0-linux-<arch>:

Арх. Суффикс файла Покрывает
amd64 -linux-amd64 большинство облачных VPS и десктопов
arm64 -linux-arm64 современные ARM-серверы, Raspberry Pi 4/5
armv7 -linux-arm-7 32-битные ARM-платы

[!NOTE] Файл armv7 — это -arm-7 32-битная ARM-сборка публикуется как …-linux-arm-7, не armv7. Сниппет установки и self-update уже используют правильное имя под вашу машину.

Протестированные дистрибутивы

Протестировано end-to-end на systemd-дистрибутивах ниже, плюс один OpenRC-дистрибутив (Alpine — см. оговорку про host-mode-only). Другие современные systemd-дистрибутивы, скорее всего, работают, но не проверены.

Дистрибутив Версия Архитектуры Init
Debian 13 amd64 · arm64 systemd
Ubuntu 22.04 LTS · 24.04 LTS · 26.04 LTS amd64 · arm64 systemd
Rocky 9 · 10 amd64 · arm64 systemd
AlmaLinux 9 · 10 amd64 · arm64 systemd
openSUSE Leap 16 amd64 · arm64 systemd
Alpine 3.22 amd64 · arm64 OpenRC
i
armv7 собирается, но не входит в контейнерную матрицу
32-битный ARM-бинарь собирается и публикуется каждый релиз, но end-to-end тесты в контейнерах гоняются только на amd64 и arm64 — armv7 «скорее всего работает, но не проверено», как и неуказанные дистрибутивы.
!
Alpine — только host-mode
На Alpine gtcnsl ставит и обслуживает host-mode Gitea и host-mode gitea-runner — и ничего больше. Executor'ы docker, docker-rootless, podman и dind-rootless для раннера честно отказывают с объяснением (на Alpine нет systemd-logind — session-менеджера, от которого зависят rootless/dind-rootless сетапы этих executor'ов). Если нужен контейнерный executor раннера — берите один из systemd-дистрибутивов выше.

Что нужно хосту

  • systemd или OpenRC — gtcnsl управляет gitea.service и gitea-runner.service через то, что реально запущено на хосте; определяет это автоматически, без флага. На Alpine это OpenRC (см. оговорку про host-mode-only выше).
  • root для операций с сервисами (install, config apply, secrets). Командам только-чтения (config get, doctor) он не нужен.
  • исходящий HTTPS к dl.gitea.com (загрузки Gitea + runner) и https://dl.gtcnsl.ru (self-update gtcnsl).

Бинарник собран с выключенным CGO, так что рядом ставить нечего — никакой версии libc подбирать, никакого интерпретатора. Это же позволяет статическому бинарнику без проблем работать поверх musl libc на Alpine — без каких-либо совместимостных прослоек.

i
Проверьте хост до того, как ему довериться
gtcnsl doctor проверяет всё вышеперечисленное (наличие init-системы, доступность HTTPS, диск, привилегии) и докладывает PASS / WARN / FAIL.

Дальше

Готовы ставить? Раздел «Установка» покрывает загрузку, проверку и PATH.