# Docker Registry Viewer Программа на Go для просмотра списка образов из Docker Registry с поддержкой авторизации. ## Возможности - Подключение к Docker Registry с авторизацией (Basic Auth и Bearer Token) - Получение списка всех репозиториев - Получение списка тегов для каждого репозитория - Поддержка пагинации для больших реестров - Конфигурация через YAML файл - Поддержка учетных данных из `~/.docker/config.json` (как в Docker CLI) ## Установка ```bash go mod download ``` ## Конфигурация Все настройки хранятся в файле `config.yaml`. Скопируйте пример конфигурации: ```bash cp config.yaml.example config.yaml ``` ### Способ 1: Указать учетные данные в config.yaml ```yaml registry: url: "https://registry.example.com" username: "admin" password: "password123" debug: false ``` ### Способ 2: Использовать учетные данные из Docker config Вы можете использовать учетные данные из `~/.docker/config.json` (те же, что использует Docker CLI): ```yaml registry: url: "https://registry.example.com" use_docker_config: true debug: false ``` Программа автоматически найдет учетные данные для указанного registry в файле `~/.docker/config.json`. **Примечание:** Если `use_docker_config: false` и не указаны `username`/`password`, программа попытается автоматически загрузить их из Docker config как fallback. ## Использование ### Базовое использование ```bash go run main.go ``` Программа автоматически загрузит конфигурацию из `config.yaml`. ### Указание другого файла конфигурации ```bash go run main.go -config /path/to/config.yaml # или краткая форма go run main.go -c /path/to/config.yaml ``` ### Сборка ```bash go build -o registry-view ./registry-view ``` ### Режим отладки Для диагностики проблем с авторизацией включите режим отладки в `config.yaml`: ```yaml debug: true ``` Режим отладки покажет: - URL запросов - HTTP статусы ответов - Заголовки ответов - Тела ответов - Процесс получения токенов ## Формат вывода Программа выводит: 1. Список всех репозиториев с нумерацией 2. Детальную информацию: для каждого репозитория список всех тегов ## Примечания - Программа поддерживает как Basic Authentication, так и Bearer Token (OAuth2) - Автоматически обрабатывает пагинацию при большом количестве репозиториев - Для работы с Registry API v2 требуется соответствующий доступ