diff --git a/deploy/runner/.env.example b/deploy/runner/.env.example new file mode 100644 index 0000000..80e06de --- /dev/null +++ b/deploy/runner/.env.example @@ -0,0 +1,4 @@ +# Скопируйте в 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 new file mode 100644 index 0000000..5642c62 --- /dev/null +++ b/deploy/runner/docker-compose.yml @@ -0,0 +1,35 @@ +# 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 +# +# Метка ubuntu-latest указывает на образ job-контейнера с docker CLI и утилитами, +# иначе `docker build` внутри джобы не сработает. +services: + runner: + image: codeberg.org/forgejo/runner:6 + # Если версия не подходит к Forgejo 1.21 — возьмите совместимый тег из релизов раннера. + 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 + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - runner_data:/data + # networks: + # - forgejo_default # если используете внутреннее имя сервиса Forgejo + +volumes: + runner_data: + +# networks: +# forgejo_default: +# external: true