Docker Registry
Настройка репозиториев Docker Registry для развёртывания. Включает настройку токенов доступа, имён репозиториев и аутентификации.
Skitflow обеспечивает бесшовную интеграцию с репозиториями Docker Registry, позволяя развёртывать приложения непосредственно из контейнерных образов. Эта функция доступна для отдельных приложений и поддерживает как публичные, так и приватные реестры.
Обзор конфигурации
Для подключения Docker Registry к вашему приложению:
- Перейдите на вкладку General вашего приложения
- Выберите Docker в качестве источника
- Настройте следующие параметры:
| Параметр | Описание |
|---|---|
| Docker Image | Полное имя Docker-образа (например, nginx:latest, myorg/myapp:v1.0) |
| Docker Registry URL | URL реестра (по умолчанию Docker Hub, если не указан) |
| Docker Registry Username | Имя пользователя для аутентификации в реестре |
| Docker Registry Password | Пароль или токен доступа для аутентификации |
Для приватных реестров требуется аутентификация. Для публичных образов поля имени пользователя и пароля можно оставить пустыми.
Интеграция с Docker Hub
Docker Hub является реестром по умолчанию и поддерживает аутентификацию как по имени пользователя/паролю, так и по токену.
Способ 1: Имя пользователя и пароль
- Username: Введите ваше имя пользователя Docker Hub
- Password: Введите ваш пароль Docker Hub
Способ 2: Токен доступа (рекомендуется)
Использование токенов доступа более безопасно и позволяет настроить детализированные разрешения:
-
Создание токена доступа:
- Перейдите в Docker Hub Settings → Personal Access Tokens
- Нажмите Generate New Token
- Задайте описание:
Skitflow-Docker-Hub-Token - Выберите разрешения Read-only
- Нажмите Generate
-
Настройка в Skitflow:
- Username: Ваше имя пользователя Docker Hub
- Password: Вставьте сгенерированный токен доступа
- Registry URL: Оставьте пустым (по умолчанию Docker Hub)
-
Развёртывание: Нажмите Save, затем Deploy на вкладке General
GitHub Container Registry (GHCR)
GHCR позволяет хранить контейнерные образы рядом с вашими репозиториями GitHub.
Предварительные требования
- Ваш Docker-образ должен быть уже опубликован в GHCR
- Вам нужен GitHub Personal Access Token с соответствующими разрешениями
Процесс настройки
-
Создание GitHub Personal Access Token:
- Перейдите в GitHub Settings → Personal Access Tokens
- Нажмите Generate new token (classic)
- Задайте имя токена:
Skitflow-GHCR-Token - Выберите следующие области доступа:
repo— доступ к репозиториямworkflow— доступ к GitHub Actionswrite:packages— загрузка пакетовdelete:packages— удаление пакетов
- Нажмите Generate token
-
Настройка в Skitflow:
- Docker Image:
ghcr.io/username/repository:tag - Registry URL:
ghcr.io - Username: Ваше имя пользователя GitHub
- Password: Вставьте сгенерированный Personal Access Token
- Docker Image:
-
Развёртывание: Нажмите Save, затем Deploy на вкладке General
Публичные образы
Для публичных образов из любого реестра:
- Docker Image: Полный путь к образу (например,
quay.io/prometheus/prometheus:latest) - Registry URL: Домен реестра (если не Docker Hub)
- Username: Оставьте пустым
- Password: Оставьте пустым
Лучшие практики
Рекомендации по безопасности:
- По возможности используйте токены доступа вместо паролей
- Предоставляйте токенам минимально необходимые разрешения
- Регулярно обновляйте токены доступа
- Используйте приватные реестры для конфиденциальных приложений
Устранение неполадок
Распространённые проблемы и решения:
- Authentication Failed: Проверьте учётные данные и разрешения токена
- Image Not Found: Проверьте правильность имени образа и тега
- Pull Rate Limits: Рассмотрите использование аутентифицированных запросов или приватных реестров
- Registry Timeout: Убедитесь, что URL реестра доступен с вашего инстанса Skitflow