Github Actions slower building Docker images

Yesterday, I could build the Docker images under a few minutes.

Now, some of the image build times run indefinitely and I had to cancel the workflow. They are random too, it could be one image build run or another, and it could be more than one stalling.

What could be causing this problem?


I’m seeing similar issues. I filed a support ticket a few days ago but have not received any response.

The issue I’m seeing is that even pulling docker images – the images used by actions themselves can be extremely slow. For example, running docker pull rust:1.51-alpine3.12 completes in under 10s for me locally but frequently takes upwards of 5 minutes in actions. I’ve also seen docker pull golang:1.16.4 take over 10 minutes in actions.

This unexplained slowness frequently causes our workflows to timeout. This all worked fine last week.

Absolutely maddening.


How may I file a support ticket?

Just noticed that it’s one of my issues too.

I’ll add one so maybe it can raise this issue.

Step 1/25 : FROM golang:1.16.0-alpine as build
1.16.0-alpine: Pulling from library/golang
ba3557a56b15: Pulling fs layer
448433d692de: Pulling fs layer
7c2a3d42746f: Pulling fs layer
c94fa40b84cd: Pulling fs layer
b8044137faa0: Pulling fs layer
c94fa40b84cd: Waiting
b8044137faa0: Waiting
7c2a3d42746f: Verifying Checksum
7c2a3d42746f: Download complete
448433d692de: Download complete
b8044137faa0: Verifying Checksum
b8044137faa0: Download complete
ba3557a56b15: Verifying Checksum
ba3557a56b15: Download complete
ba3557a56b15: Pull complete
448433d692de: Pull complete
7c2a3d42746f: Pull complete
Error: The operation was canceled.

You should be able to create a ticket here.

1 Like

Thank you!

I added my ticket here. Hopefully, they do something about it.

In the meantime, you might try increasing your timeouts/waiting longer.

It’s absurd that it takes almost 10 minutes to pull an image, but, in my experience, it will generally eventually complete…

1 Like

That runtime’s a nightmare.

But, thank you for the suggestion. I’ll do this in the meantime.

1 Like

Is it possible you’re hitting rate-limiting?

You might try creating a Docker Hub account and using it via a secret.

Is it posible you’re hitting rate-limiting?

Unlikely. From the linked doc:

When you issue a pull request and you are over the limit for your account type, Docker Hub will return a 429 response code with the following body when the manifest is requested:

You have reached your pull rate limit. You may increase the limit by authenticating and upgrading:

You will see this error message in the Docker CLI or in the Docker Engine logs.

We didn’t see any messages to this effect.

GitHub support acknowledged that they were looking into this issue and we haven’t seen any recurrences of it in the past few months, which leads me to believe this was a problem on GitHub’s side.

1 Like