Docker Hub Login on Unraid

I’ve had a few times now where I can’t grab a new container image to startup due to their rates limits on docker hub. This has been quite annoying, and there is a free plan for double the image pulls. Here is how you can login on unraid and setup the go file so it persists between reboots.

To start out you’ll need a free account on docker hub, we’ll be using the username and password in our Go script. Since I’m only using this account for image pulls, I’m okay with this security posture (plain text password in a script). I also used an auto generated password from Bitwarden, so it’s unique to this account alone.

You can test with the command below in a terminal to your unraid server.

root@ShadowOfIntent:/mnt# docker login -u xxxxxxxxxx
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

Now, the command will save your credentials in /root/, however that folder doesn’t persist in unraid, so this won’t persist between reboots. To do that, we have to go to the go script (/boot/config/go). We want to add the line below to the go script (note the single quotes around the password for special characters to work)

docker login -u xxxxxx -p 'xxxxxx'

This worked well and I now have double the image pulls to burn through on my unraid server. I’m glad to be able to try out new software sooner rather than waiting a day for the limits to reset.