Sinker написан на Go, так что можете поставить его через go install:
# go install github.com/plexsystems/sinker@latestили просто скачать бинарник из репозитория.
Авторизацию Sinker использует ту же, что и Docker, так что отдельно настраивать не надо. Если docker push работает с этой машины в закрытый registry, то и Sinker в него зайдёт.
Настройки Sinker хранит в конфиге в формате yaml. Конфиг вполне логичный и простой. Достаточно настроить источник (source) и приёмник (target).
target: host: mycompany.com repository: myteamsources:- repository: coreos/prometheus-operator host: quay.io tag: v0.40.0- repository: super/secret tag: v0.3.0 auth: username: DOCKER_USER_ENV password: DOCKER_PASSWORD_ENVПараметр host можно вообще не задавать. Тогда все образы будут утянуты с Docker Hub. После настройки конфига, можно проверить, его корректность и образы, которые будут скопированы. Для этого добавляется ключ --dryrun.
# sinker push --dryrunЕсли всё ОК, можно запускать синхронизацию.
# sinker pushЕсли хотите перед тем как залить образы в target, что-то сделать с ними, например, как-то проверить, можете загрузить их себе локально.
# sinker pullА после этого уже отправить в target.
#docker #devops