master
Настройка раннеров для Gitea
Чтобы сэкономить на железе и при этом получить независимые инстансы роннеров (иначе кэш не будет работать), будем костылить через docker Данный пример расчитан на развертывание на ubuntu 24.04
systemd шаблоны под docker и containerd
Делаем симлиннки на шаблоны сервисов
ln -s systemd/containerd@.service /etc/systemd/system/containerd@.service
ln -s systemd/docker@.service /etc/systemd/system/docker@.service
Загружаем изменения
systemctl daemon-reload
Стартуем нужное количество демонов
Расчитывайте кол-во правильно, так как по умолчанию на каждого демона закладывается по 7гб ОЗУ на /tmp и go cache
Для примера возьмем 3 штуки
systemctl enable --now containerd@1 containerd@2 containerd@3
systemctl enable --now docker@1 docker@2 docker@3
С systemd закончили
Генерация docker-compose и конфигов
Так как тут уже все обкатано, то конфиги я решил взять на себя как и сам docker-compose
python3 gen.py \
--gitea-image "gitea/runner@sha256:ae746f2d74e43d853c8b2eb426dee3cc99717a144868dadf969e585b81f24534 # 3.3.0" \
--xray-image "192.168.1.33/rkp/xray-core-awg:sha256@0ce8fcce09e081828bcf5b6e592a1d899cd15550fcabb9b03d4072b54f99b4aa # 26.7.28-awg1" \
--proxy 192.168.1.91 \
--output docker-compose.yaml \
--template docker-compose.template
Результатом будет docker-compose.yaml, cache/config.yaml, runner/config.yaml
Запуск
Когда все шаги выполнены просто запускаете
docker-compose up -d
profit!
Languages
Python
91.3%
Dockerfile
8.7%