I have a script that runs on the host and creates/starts/stops a docker container. I'd like the script to change the password of the root user within the container.
Since the container is an ssh server, I tried:
sshpass -p 'OLDPASS' ssh root@<container-IP> 'echo -e "NEWPASS\nNEWPASS" | passwd root'
but it doesn't work. Before going ahead and spending more time debugging it, I'd like to know if there's a smarter way to do it.
I understand that the proper "docker way" is to make a script that is run by the Dockerfile, which pulls the password from a shared volume and sets it as the root password. This sounds complicated, but I know how to do it and works well for another docker image I use. But I don't want to do it for this one.
I just need a command that uses Docker or ssh to change a user's password non-interactively.