revert: remove remote gitea deployment files
This commit is contained in:
@@ -1,87 +0,0 @@
|
||||
# Gitea + Actions runner
|
||||
|
||||
Этот compose сохраняет существующие данные Gitea в `/srv/gitea` и хранит
|
||||
регистрацию runner отдельно в `/srv/gitea-runner`. Он рассчитан на перенос
|
||||
существующего контейнера, созданного через `docker run`.
|
||||
|
||||
## Подготовка
|
||||
|
||||
На сервере, где работает Gitea, проверьте сеть и контейнер:
|
||||
|
||||
```bash
|
||||
docker network inspect kycb_internal >/dev/null
|
||||
docker inspect gitea --format '{{json .Mounts}}'
|
||||
docker inspect gitea --format '{{json .Config.Env}}'
|
||||
```
|
||||
|
||||
В каталоге рядом с compose создайте `.env` с правами `600`:
|
||||
|
||||
```dotenv
|
||||
TZ=Asia/Krasnoyarsk
|
||||
GITEA_DATA_DIRECTORY=/srv/gitea
|
||||
GITEA_RUNNER_DATA_DIRECTORY=/srv/gitea-runner
|
||||
|
||||
# Для runner внутри той же Docker-сети:
|
||||
GITEA_INSTANCE_URL=http://gitea:3000/
|
||||
GITEA_RUNNER_NAME=rf4-runner-01
|
||||
GITEA_RUNNER_LABELS=ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest
|
||||
GITEA_RUNNER_REGISTRATION_TOKEN=вставьте_одноразовый_токен_из_Gitea
|
||||
```
|
||||
|
||||
Токен создаётся в `Repository → Settings → Actions → Runners → Create new
|
||||
runner`. Он не должен попадать в Git, shell history или compose-файл.
|
||||
|
||||
## Переключение без потери данных
|
||||
|
||||
Сначала остановите старый контейнер, но не удаляйте каталог данных:
|
||||
|
||||
```bash
|
||||
docker stop gitea
|
||||
docker rename gitea gitea-before-compose
|
||||
sudo install -d -m 700 /srv/gitea-runner
|
||||
sudo chmod 600 .env
|
||||
```
|
||||
|
||||
Запустите compose из каталога, где лежат `.env` и
|
||||
`gitea-runner.compose.yaml`:
|
||||
|
||||
```bash
|
||||
docker compose -f gitea-runner.compose.yaml config
|
||||
docker compose -f gitea-runner.compose.yaml up -d
|
||||
docker compose -f gitea-runner.compose.yaml ps
|
||||
docker compose -f gitea-runner.compose.yaml logs -f runner
|
||||
```
|
||||
|
||||
После запуска в Gitea runner должен иметь состояние `Idle`/`Online`. Проверка
|
||||
файлов регистрации:
|
||||
|
||||
```bash
|
||||
sudo find /srv/gitea-runner -maxdepth 2 -type f -print
|
||||
```
|
||||
|
||||
Старый контейнер оставьте остановленным до проверки web UI, SSH и Actions. Если
|
||||
нужно вернуться назад:
|
||||
|
||||
```bash
|
||||
docker compose -f gitea-runner.compose.yaml down
|
||||
docker rename gitea-before-compose gitea
|
||||
docker start gitea
|
||||
```
|
||||
|
||||
Команда `down` удаляет только контейнеры compose, а `/srv/gitea` и
|
||||
`/srv/gitea-runner` не удаляет.
|
||||
|
||||
## Важные условия
|
||||
|
||||
`GITEA_INSTANCE_URL` должен быть доступен из контейнера runner. Если Gitea
|
||||
работает за reverse proxy и внутренний адрес `http://gitea:3000/` не подходит,
|
||||
укажите внешний `ROOT_URL`, доступный с этого сервера.
|
||||
|
||||
Runner получает доступ к `/var/run/docker.sock`, потому что workflow проекта
|
||||
запускает Docker Compose, PostgreSQL service и Playwright. Такой runner должен
|
||||
исполнять только доверенный код: доступ к socket фактически даёт заданиям
|
||||
административный доступ к Docker-хосту.
|
||||
|
||||
Если runner уже регистрировался с другим label, удалите старую регистрацию в
|
||||
Gitea и используйте новый каталог `/srv/gitea-runner`; файл регистрации внутри
|
||||
`/data` вручную не редактируйте.
|
||||
@@ -1,36 +0,0 @@
|
||||
services:
|
||||
gitea:
|
||||
image: gitea/gitea:latest
|
||||
container_name: gitea
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
PUID: "1000"
|
||||
PGID: "1000"
|
||||
TZ: ${TZ:-Asia/Krasnoyarsk}
|
||||
ports:
|
||||
- "3232:22"
|
||||
volumes:
|
||||
- ${GITEA_DATA_DIRECTORY:-/srv/gitea}:/data
|
||||
networks:
|
||||
- kycb_internal
|
||||
|
||||
runner:
|
||||
image: docker.io/gitea/act_runner:latest
|
||||
container_name: gitea-runner
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- gitea
|
||||
environment:
|
||||
GITEA_INSTANCE_URL: ${GITEA_INSTANCE_URL:-http://gitea:3000/}
|
||||
GITEA_RUNNER_REGISTRATION_TOKEN: ${GITEA_RUNNER_REGISTRATION_TOKEN:?Set GITEA_RUNNER_REGISTRATION_TOKEN in .env}
|
||||
GITEA_RUNNER_NAME: ${GITEA_RUNNER_NAME:-rf4-runner-01}
|
||||
GITEA_RUNNER_LABELS: ${GITEA_RUNNER_LABELS:-ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest}
|
||||
volumes:
|
||||
- ${GITEA_RUNNER_DATA_DIRECTORY:-/srv/gitea-runner}:/data
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
networks:
|
||||
- kycb_internal
|
||||
|
||||
networks:
|
||||
kycb_internal:
|
||||
external: true
|
||||
Reference in New Issue
Block a user