Forgejo подходит для домашнего Git-сервера, но repositories без базы и конфигурации недостаточны для полного восстановления.
Compose
services:
forgejo:
image: codeberg.org/forgejo/forgejo:11
environment:
USER_UID: 1000
USER_GID: 1000
volumes:
- forgejo_data:/data
ports:
- "127.0.0.1:3000:3000"
- "2222:22"
restart: unless-stopped
volumes:
forgejo_data:
Сверьте актуальный поддерживаемый tag. Веб-интерфейс публикуйте через HTTPS, а SSH оставьте на отдельном порту или проксируйте на уровне TCP. В ROOT_URL укажите внешний URL, иначе OAuth и ссылки в письмах будут неверными.
Бэкап
Для SQLite остановите запись на время копии. Для PostgreSQL/MariaDB создайте штатный дамп. Сохраните /data, базу и секреты одной версии. У Forgejo есть dump-команда, но её архив всё равно нужно вынести на другой носитель и проверить.
В тестовом восстановлении клонируйте репозиторий по HTTPS и SSH, откройте issue и проверьте вложение. Обычный git clone --mirror сохраняет Git-историю, но не пользователей, issue, pull request и настройки.
Официальные источники