# Gitea Server Docker-окружение для развертывания Gitea с PostgreSQL, интеграцией S3 и автоматическими бэкапами. ## Возможности - ✅ Git сервер - ✅ Интеграция с S3 (LFS, пакеты, аватары, вложения) - ✅ Автоматические бэкапы в S3 - ✅ Отправка писем (SMTP) - ✅ Gitea Actions ([ранеры в отдельном репозитории](https://github.com/gromov-io/gitea-runner)) **⚠️ Ограничение:** Container Registry требует `https`, не работает в локальном режиме. ## Оглавление 1. [Быстрый старт](#быстрый-старт) 2. [Автоматические бэкапы в S3](#автоматические-бэкапы-в-s3) 3. [Настройка ранеров](#настройка-ранеров) 4. [Устранение проблем](#устранение-проблем) --- ## Быстрый старт ### 1. Конфигурация ```bash cp env.example .env ``` Отредактируйте `.env`, укажите пароли и S3 креденшелы (опционально). ### 2. Запуск ```bash docker-compose up -d ``` Сервер доступен по адресу [http://127.0.0.1:8080](http://127.0.0.1:8080). ### 3. Первичная настройка При первом входе укажите: - Название сайта - Логин и пароль администратора - Опционально: капча, регистрация, другие настройки --- ## Автоматические бэкапы в S3 Используется решение **[docker-s3-backup](https://github.com/gromov-io/docker-s3-backup)** — элегантный способ бэкапа всего проекта (база данных + файлы). ### Настройка 1. В `.env` укажите S3 креденшелы: ```bash S3_ENDPOINT=storage.yandexcloud.net S3_ACCESS_KEY=ваш_ключ S3_SECRET_KEY=ваш_секрет S3_BUCKET=ваш_бакет ``` 2. Сервис `backup` автоматически: - Останавливает Gitea и PostgreSQL перед бэкапом - Создает архив всего проекта (база данных + файлы) - Загружает в S3 (папка `gitea-backups/`) - Запускает сервисы обратно 3. Расписание настраивается в `docker-compose.yaml` (по умолчанию ежедневно в 05:00). ### Восстановление Просто скачайте архив из S3 и разархивируйте — всё готово к запуску. --- ## Настройка ранеров Gitea Actions ранеры находятся в отдельном репозитории: **[gromov-io/gitea-runner](https://github.com/gromov-io/gitea-runner)** ### Быстрая настройка: 1. Перейдите в админ-панель: [http://127.0.0.1:8080/-/admin/actions/runners/](http://127.0.0.1:8080/-/admin/actions/runners/) 2. Нажмите **"Создать новый раннер"** и скопируйте токен 3. Следуйте инструкциям в репозитории gitea-runner --- ## Устранение проблем ### Изменения в .env не применяются Пересоздайте контейнеры: ```bash docker-compose down docker-compose up -d --force-recreate ``` ### Сброс настроек Для полного сброса удалите данные: ```bash docker-compose down sudo rm -rf data/ postgres-data/ ``` ---