From fe4d2d8d7ebbaa557683a4c6822299fab187331a Mon Sep 17 00:00:00 2001 From: MpakobecEx Date: Fri, 16 Oct 2026 00:33:02 +0500 Subject: [PATCH] chore: fix Forgejo runner image and registration steps --- deploy/runner/.env.example | 4 --- deploy/runner/docker-compose.yml | 49 ++++++++++++++------------------ 2 files changed, 22 insertions(+), 31 deletions(-) delete mode 100644 deploy/runner/.env.example diff --git a/deploy/runner/.env.example b/deploy/runner/.env.example deleted file mode 100644 index 80e06de..0000000 --- a/deploy/runner/.env.example +++ /dev/null @@ -1,4 +0,0 @@ -# Скопируйте в deploy/runner/.env и заполните. -FORGEJO_URL=https://git.mpakosrv.ru -RUNNER_TOKEN= -RUNNER_NAME=home-runner diff --git a/deploy/runner/docker-compose.yml b/deploy/runner/docker-compose.yml index 5642c62..dc27aee 100644 --- a/deploy/runner/docker-compose.yml +++ b/deploy/runner/docker-compose.yml @@ -1,35 +1,30 @@ -# Act runner для Forgejo Actions. +# Act runner для Forgejo Actions (официальный образ). # Запускать на том же хосте, где Docker с Forgejo (нужен доступ к docker.sock). # -# 1) Получить регистрационный токен: -# Forgejo -> Site Administration -> Actions -> Runners -> Create new Runner -# (или Repo -> Settings -> Actions -> Runners, если раннер только для репозитория). -# 2) Заполнить .env рядом (FORGEJO_URL, RUNNER_TOKEN) и запустить: -# docker compose up -d +# Образ: data.forgejo.org/forgejo/runner:<версия> (доступны 6, 8–13). +# ВАЖНО: версия раннера должна быть совместима с версией Forgejo. +# Forgejo 1.21 — очень старая (EOL); современный раннер может не завестись. +# Рабочая связка обычно: свежая Forgejo (15 LTS / latest) + runner :13. # -# Метка ubuntu-latest указывает на образ job-контейнера с docker CLI и утилитами, -# иначе `docker build` внутри джобы не сработает. +# Пошагово: +# 1) Forgejo -> Site Administration -> Actions -> Runners -> Create new Runner. +# Скопировать url / uuid / token. +# 2) Сгенерировать конфиг раннера: +# mkdir -p data +# docker run --rm -v "$PWD/data:/data" \ +# data.forgejo.org/forgejo/runner:13 \ +# forgejo-runner generate-config > data/runner-config.yml +# 3) В data/runner-config.yml заполнить: +# server.connections.forgejo.url / uuid / token +# runner.labels: ["ubuntu-latest:docker://catthehacker/ubuntu:act-latest"] +# 4) chown -R 1001:1001 data +# 5) docker compose up -d services: runner: - image: codeberg.org/forgejo/runner:6 - # Если версия не подходит к Forgejo 1.21 — возьмите совместимый тег из релизов раннера. + image: data.forgejo.org/forgejo/runner:13 restart: unless-stopped - environment: - # Публичный адрес Forgejo. Если раннер в одной docker-сети с Forgejo, - # можно указать http://forgejo:3000 и подключить ту сеть ниже. - GITEA_INSTANCE_URL: ${FORGEJO_URL:-https://git.mpakosrv.ru} - GITEA_RUNNER_REGISTRATION_TOKEN: ${RUNNER_TOKEN:?задайте RUNNER_TOKEN} - GITEA_RUNNER_NAME: ${RUNNER_NAME:-home-runner} - GITEA_RUNNER_LABELS: ubuntu-latest:docker://catthehacker/ubuntu:act-latest + user: "1001:1001" volumes: + - ./data:/data - /var/run/docker.sock:/var/run/docker.sock - - runner_data:/data - # networks: - # - forgejo_default # если используете внутреннее имя сервиса Forgejo - -volumes: - runner_data: - -# networks: -# forgejo_default: -# external: true + command: ["forgejo-runner", "daemon", "--config", "/data/runner-config.yml"]