savagedb_bot/wiki/Harbor-Registry.md

2.8 KiB
Raw Blame History

Настройка Harbor Docker Registry для Gitea Actions.

Быстрая настройка

1. Создание Robot Account

  1. Откройте Harbor UI: https://reg.ddl.su
  2. Войдите в проект salvage_bot
  3. Перейдите Robot AccountsNew Robot Account
  4. Настройте:
    • Name: gitea-ci
    • Expiration: выберите срок
    • Permissions: Push Artifact + Pull Artifact
  5. Скопируйте:
    • Username: robot$gitea-ci
    • Token: сгенерированный токен

2. Настройка Secrets в Gitea

DOCKER_REGISTRY_URL = reg.ddl.su
DOCKER_REGISTRY_PROJECT = salvage_bot  
DOCKER_REGISTRY_USERNAME = robot$gitea-ci
DOCKER_REGISTRY_PASSWORD = <токен robot account>

3. Результат

После настройки образы будут доступны:

reg.ddl.su/salvage_bot/salvagedb-bot:latest

Формат тегов Harbor

Harbor использует трёхуровневую структуру:

registry_url/project/repository:tag

Примеры:

  • reg.ddl.su/salvage_bot/salvagedb-bot:latest
  • reg.ddl.su/salvage_bot/salvagedb-bot:v1.0.0
  • reg.ddl.su/salvage_bot/salvagedb-bot:main

Устранение проблем

Ошибка 400 Bad Request при OAuth

Причины:

  • Неправильный формат username (должен начинаться с robot$)
  • Некорректный токен robot account
  • Отсутствие PROJECT_NAME в пути тега
  • Отсутствие прав на проект

Решение:

  1. Убедитесь что username в формате robot$name
  2. Проверьте корректность токена
  3. Убедитесь что настроен DOCKER_REGISTRY_PROJECT
  4. Проверьте права robot account в Harbor

Ошибка 403 Forbidden

  • Robot account не имеет прав Push Artifact
  • Проект недоступен для robot account

Проверка доступности

# Локальный тест
docker login reg.ddl.su -u robot$gitea-ci

# Pull тест
docker pull reg.ddl.su/salvage_bot/salvagedb-bot:latest

Преимущества Robot Account

  • Безопасность - ограниченные права только на CI/CD
  • Изоляция - можно отозвать без влияния на основной аккаунт
  • Аудит - чёткое разграничение доступа
  • Автоматизация - создан специально для CI/CD

Связанные страницы