У меня проблема, нажав изображение докера в локальном реестре. У меня есть локальный реестр, например some.registry.com
. Мой сценарий выглядит следующим образом (build.sh
):Cant push docker image to local registry .sh script, вызванный из plink - без базовых учетных данных auth
#!/bin/bash
# some commands
# build image
# tag image
docker push some.registry.com/my/imagename
Этот скрипт работает отлично, если я запускаю его из текущей системы (я бегу на Ubuntu 16.04):
sudo ./build.sh
Но мне нужно, чтобы вызвать этот сценарий из другого сценария на машине Windows. я использую для этого plink
Этот сценарий выглядит (other_script.bat
):
REM do something
call D:\install\plink.exe -ssh -v -t [email protected] -pw PASS "sudo -S <<< 'PASS' /home/user/scr/build.sh"
Все команды в build.sh
работают отлично (построить изображение, бирка e.t.c изображение). Но когда вызывается docker push
, я получаю сообщение no basic auth credentials
Есть ли у кого-нибудь предложение?
Спасибо за ваш ответ. Но может быть, я недостаточно понимаю вас. У меня нет докеров на оконной машине. Должен ли я использовать какой-то магазин кредитов или что-то еще? Но я думаю, что решаю свою проблему. Я добавил в свой скрипт ('build.sh') перед нажатием команды входа в docker для изображения: ' docker login -u user -p pass https://reg.com docker push ... ' – arthas
Привет, вход в docker на хост - это вариант. Я имел в виду нечто вроде входа в любой публичный или закрытый репозиторий, для которого у вас есть учетные данные. При входе в систему команда хранит закодированные учетные данные в $ HOME/.docker/config.json в Linux или% USERPROFILE% /. Docker/config.json в Windows. – hecko84