Files
portal/docs/ops/gitea/push-mirror-setup.md
T
Дмитрий 66d52649c4
Accessibility (Pa11y live) / a11y (push) Has been cancelled
SAST — Semgrep / Semgrep SAST scan (push) Has been cancelled
docs+chore: gitea-рубуки + support-тикет + .gitignore local-clutter
docs/ops/gitea (5 доков миграции и бэкапа Gitea) + docs/support (YC SSH-тикет) в историю. .gitignore: локальные бэкапы settings.json, эталон-снимки, Ctemp-дампы - чтобы не висели в untracked.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 07:30:30 +03:00

4.0 KiB
Raw Blame History

Настройка off-box зеркала (push-mirror) из Gitea

Зачем: второй уровень бэкапа. Если виртуальная машина с Gitea умрёт, копия репозитория останется на стороннем хостинге. Часть комплекта — см. runbook шаги 9-10.

Исполнитель: 🧑‍💼 владелец (аккаунт/токен стороннего хостинга) + 📋 настройка в Gitea.


1. Выбрать сторонний российский хостинг

Хостинг Заметки
GitVerse (СберТех) Managed RU-хостинг, GitHub-подобный. ⚠️ проверить актуальные лимиты приватных репозиториев и условия
GitFlic Managed RU-хостинг, есть импорт из GitHub. ⚠️ проверить актуальные лимиты/условия

Достаточно одного как зеркало. Это только резервная копия — CI/основная работа остаются на своём Gitea.

⚠️ проверить: актуальное состояние, тарифы и лимиты выбранного хостинга на момент настройки (вживую не подтверждено).


2. На стороне зеркала (🧑‍💼 владелец)

  1. Завести аккаунт на выбранном хостинге.
  2. Создать пустой приватный репозиторий под зеркало (напр. liderra/portal-mirror), БЕЗ инициализации README.
  3. Создать токен доступа (personal access token) с правом записи в репозитории. Сохранить — это секрет, в общий доступ/репозиторий не класть.

3. В Gitea настроить push-mirror (📋 по комплекту)

В веб-интерфейсе Gitea: открыть репозиторий → Настройки → раздел Зеркала (Mirrors) → добавить Push Mirror:

  • Remote Repository URL: https://<MIRROR_HOST>/<OWNER>/<REPO>.git
  • Authorization: имя пользователя + токен со стороннего хостинга (из п.2.3).
  • Sync interval: напр. каждые 8 часов (или по желанию).
  • Сохранить.

Gitea будет автоматически дозаливать новые коммиты/ветки на зеркало по расписанию.


4. Проверить, что зеркало реально синхронизировалось (📋 по комплекту)

Это обязательный шаг — сохранения настройки НЕДОСТАТОЧНО:

  1. В Gitea на странице зеркал нажать Synchronize Now (запустить синхронизацию вручную).
  2. Дождаться завершения (статус без ошибки).
  3. Открыть репозиторий на стороне зеркала (GitVerse/GitFlic) и убедиться, что:
    • репозиторий не пустой, ветки на месте;
    • последний коммит в main совпадает с тем, что в Gitea.

Только после успешной сверки считать off-box бэкап рабочим.


Траблшутинг

  • Sync падает с ошибкой авторизации — перепроверить токен стороннего хостинга и право записи.
  • Зеркало пустое после sync — проверить, что URL указывает на существующий пустой репозиторий и что исходный репозиторий в Gitea не пуст (сначала выполнить заливку, runbook шаги 7-8).