Problem
Terraform Enterprise is blocked by the following error:
Trying to pull repository docker.io/replicated/replicated ...
toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit
Cause
Docker Hub limits the number of Docker image downloads (“pulls”) per-IP, and based on the account type of the user pulling the image. Unauthenticated pull requests are limited to 100 requests which is typically sufficient for a TFE install, but if the installation of TFE had to be re-tried an excessive amount of times, or there are unauthenticated requests to Docker already going through the same IP that the TFE instance is using for outbound requests (such as a shared proxy) then that limit can be reached. You may need to wait up to 6 hours for the limit to reset. If you have a Docker Free user or above you can authenticate your requests through that user to circumvent and/or increase the rate limitation by creating a configuration file for the installer to use with the Docker user credentials contained within.
Solutions:
Attempt this first:
- Add
docker.io
to theadditional-no-proxy
attribute at install time:./install.sh additional-no-proxy=docker.io
If the above does not resolve the issue, then follow these steps to have your Docker user credentials implemented during installation:
- Within your TFE server, create a file named
replicated.conf
within the/etc
directory - Append this code block into
replicated.conf
, and modify the values of each key to match your Docker user's credentials:
{
"DockerHubUsername": "EnterUsernameHere",
"DockerHubPassword": "EnterPasswordHere"
}
- Save your edit
- Run
docker login
to login to the Docker registry with the user credentials. - Execute install.sh