Я использую официальный образ реестра Docker , и настроил его как получение через кеш.
Мои клиенты могут входить в систему и загружать / извлекать локальные изображения, например:
docker login -u username -p secret docker.example.local:5000
docker pull docker.example.local:5000/myImage
Я настроил своих клиентов на использование сервера реестра Docker в качестве прокси:
root@server:/# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.example.local:5000"]
}
Но когда мои клиенты пытаются извлечь изображения, которых еще нет на сервере реестра, я получаю сообщение об ошибке. Пример команды pull:
docker pull alpine
Затем сервер реестра отвечает этим сообщением в своем файле журнала:
error authorizing context: basic authentication challenge for realm \"Registry Realm\": invalid authorization credential
Я наткнулся на этот пост , предлагающий поставить прокси-сервер Nginx впереди, но это похоже на хак, и я бы предпочел более чистый способ сделать это, если это возможно.
Как другие настроили свой сервер реестра в режиме сквозного кэширования - нашли ли вы лучшее решение, чем установка прокси-сервера Nginx перед сервером реестра?