Resource nubes_gitea · Service ID: 99 · Service Name: Gitea¶
Manual · Create params · Modify params · Output params · Operations · Example
MAN¶
Инструкция по развертыванию Gitea через платформу¶
1. Общая информация¶
Gitea — это лёгкий, быстрый и самодостаточный сервис хостинга Git-репозиториев с веб-интерфейсом. Позволяет создавать и управлять репозиториями, организациями, командами, а также настраивать CI/CD через интеграции. Развёртывание полностью автоматизировано платформой.
Доступные операции¶
- create — Создание сервиса Gitea
- delete — Удаление сервиса Gitea
- modify — Модификация сервиса Gitea
- suspend — Остановка сервиса Gitea
- resume — Запуск сервиса Gitea
2. Параметры развертывания¶
Ниже перечислены параметры, которые необходимо указать при создании ресурса Gitea:
-
Платформа для развертывания: Платформа для развертывания (среда, в которой будет развёрнут сервис). Пример:
k8s-3.ext.nubes.ru. -
Количество узлов в сети: Количество реплик подов Gitea. Пример:
1 -
Квота (megabyte) памяти пода: Квота памяти пода в мегабайтах. Пример:
1024 -
Квота (millicore) ядра пода: Квота CPU пода в миликорах (1000 mCPU = 1 vCPU). Пример:
500 -
Размер (gigabyte) диска для базы данных: Размер PVC для хранения репозиториев и данных Gitea в гигабайтах. Пример:
10 -
FQDN / Домен: Доменное имя, по которому будет доступен сервис. Пример:
git.example.com -
Инстанс услуги PostgreSQL: UUID услуги k8sPgsql, в которой будет создана база данных
giteaи пользовательtechgitea. -
Дополнительные параметры сервера (iniServerParams): JSON-объект с дополнительными параметрами секции
[server]вapp.ini. Пример: -
Дополнительные annotations для Ingress (ingressExtraAnnotations): JSON-объект с дополнительными annotations для Ingress-контроллера. Пример:
3. Особенности подключения и работы с репозиториями¶
3.1. Доступ только по HTTPS¶
Сервис развёртывается с rootless-образом Gitea. SSH-сервер внутри и он доступен только внутри кластера Kubernetes.
Внешний доступ к репозиториям осуществляется исключительно по HTTPS через Ingress.
3.2. Настройка git для передачи логина и пароля¶
Для работы с приватными репозиториями через HTTPS необходимо передать учётные данные. Рекомендуется использовать один из следующих способов:
Встроить креды в URL remote
Важно: Логин и пароль администратора создаются автоматически при развертывании и хранятся в Vault.
3.3. Работа с большими файлами¶
По умолчанию MAX_CONTENT_LENGTH установлен в 500 МБ, а Ingress пропускает pack-файлы до 500 МБ.
Если необходимо запушить файлы близкие к лимиту, увеличьте HTTP-буфер git на стороне клиента:
Для файлов более 500 МБ рекомендуется использовать Git LFS.
4. Выходные параметры¶
После успешного развертывания ресурса Gitea платформа возвращает ряд параметров.
Ключевым из них является:
connectionUrl Это внешний URL для доступа к веб-интерфейсу и Git-репозиториям по HTTPS. Пример:
internalConnect Внутренний эндпоинт для подключения к PostgreSQL из других сервисов внутри кластера.
5. Дополнительная информация¶
- База данных
giteaи пользовательtechgiteaсоздаются автоматически в указанной услуге PostgreSQL. - DNS-запись и TLS-сертификат (Let's Encrypt) настраиваются автоматически на основе указанного домена.
- Для изменения параметров сервера Gitea (
app.ini) используйте операцию modify с полемiniServerParams. - Для добавления дополнительных Ingress-annotations используйте операцию modify с полем
ingressExtraAnnotations.