I am trying to write a bash script to login to ssh and then run docker login command as sudo.
SSH login works fine , but issue is with sudo login. Command:
sshpass -p password ssh -oStrictHostKeyChecking=no -oServerAliveInterval=120 [email protected] -p 2222 "echo password | sudo -S - docker login -u=myuser -p='dockerpa#$%' dockerhub.com/docker-repo"
Also tried
sshpass -p password ssh -tt -oStrictHostKeyChecking=no -oServerAliveInterval=120 [email protected] -p 2222 "echo password | sudo -S - docker login -u=myuser -p='dockerpa#$%' dockerhub.com/docker-repo"
Error being:
[sudo] password for myser: sudo: docker: command not found
If I execute sudo docker login -u=myuser -p='dockerpa#$%' dockerhub.com/docker-repo directly on the remote server, it works fine.
What am I missing here ? Thank you.
My 2 cents here but shouldn`t you use ?
without the - because:
Later edit: The issue is from docker login , as you use it will prompt for password, you should use:
You can find an example for the non-interactive docker login in the documentation: https://docs.docker.com/engine/reference/commandline/login/