Начальная конфигурация Gitea Server Runner

This commit is contained in:
2025-10-23 05:09:33 +03:00
commit 35d1ece7c7
5 changed files with 99 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
server/data/*
runners/gitea-runner-*/
.env
data/*

25
README.md Normal file
View File

@@ -0,0 +1,25 @@
# Gitea Server Runner
Docker-контейнер для запуска CI/CD раннера Gitea Actions.
## Настройка
1. Скопируйте `env.example` в `.env`
2. Заполните переменные в `.env`:
- `GITEA_RUNNER_REGISTRATION_TOKEN` - токен из админ-панели Gitea
- `GITEA_INSTANCE_URL` - URL вашего Gitea сервера
- `GITEA_RUNNER_NAME` - уникальное имя раннера
## Запуск
```bash
docker-compose up -d
```
Раннер автоматически зарегистрируется в Gitea при первом запуске.
## actions/cache в Docker ранере
Для работы actions/cache требуется настроить config.yaml согласно документации.
https://docs.gitea.com/usage/actions/act-runner#advanced-configurations
host: - должна быть локальная сеть (пример: 192.168.0.35 ip текущего сервера). 127.0.0.1 не прокатит так-как у каждого контейнера свой изолированный 127.0.0.1.

32
config.yaml Normal file
View File

@@ -0,0 +1,32 @@
log:
level: info
runner:
file: .runner
capacity: 10
envs: {}
env_file: .env
timeout: 3h
insecure: false
fetch_timeout: 5s
fetch_interval: 2s
labels: []
cache:
enabled: true
dir: ""
host: "192.168.1.37"
port: 8088
external_server: ""
container:
network: ""
privileged: false
options: ""
workdir_parent: ""
valid_volumes: []
docker_host: ""
force_pull: false
host:
workdir_parent: ""

20
docker-compose.yaml Normal file
View File

@@ -0,0 +1,20 @@
volumes:
shared-tool-cache:
services:
gitea-runner:
container_name: gitea-runner
restart: always
image: gitea/act_runner:latest
environment:
- GITEA_RUNNER_REGISTRATION_TOKEN=${GITEA_RUNNER_REGISTRATION_TOKEN}
- GITEA_INSTANCE_URL=${GITEA_INSTANCE_URL}
- GITEA_RUNNER_NAME=${GITEA_RUNNER_NAME}
- CONFIG_FILE=/config_data/config.yaml
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/data
- ./config.yaml:/config_data/config.yaml:ro
- shared-tool-cache:/opt/hostedtoolcache
ports:
- "8088:8088"

18
env.example Normal file
View File

@@ -0,0 +1,18 @@
# Переменные окружения для Gitea Runner
# Токен для регистрации runner'а в Gitea
# Получается в админ-панели Gitea: Settings -> Actions -> Runners -> Create new runner
# Этот токен уникален для каждого runner'а и используется только один раз при регистрации
GITEA_RUNNER_REGISTRATION_TOKEN=your_registration_token_here
# URL адрес экземпляра Gitea
# Должен быть доступен из контейнера runner'а
# Примеры:
# - http://gitea (если используется Docker network)
# - http://localhost:3000 (для локальной разработки)
# - https://git.example.com (для внешнего сервера)
GITEA_INSTANCE_URL=http://your_gitea_instance_url
# Имя runner'а для идентификации в Gitea
# Должно быть уникальным для каждого runner'а
GITEA_RUNNER_NAME=your_runner_name_here