Act Runner in k8s fail to connect to docker daemon

Hi,

It looks to me like they are 2 separate questions:

#1. “in-cluster mirror”
Are you referring to the image you pull ? gitea/runner-images:ubuntu-latest ?
There are options like:

You can deep dive yourself in a search for “kubernetes container image cache or registry” i think you can find a lot of choice.

I use Gitea, so the image is very close to the act_runner.

Also have worked with Harbor and other self-hosted artifacts registries (this is also what you can search) and is not that overkill as it seems.

#2. “Container layers building cache”
I’ve researched a bit, some time ago, but didn’t act on it,

The “daemon” container is the one building the image. In there there is docker, and it has these capabilities. See screenshots.

Gitea act_runner is a clone more or less of GH actions runner, so that’s the lead you can start digging in.

Seems somebody did already something about it:

or i’d look at a commercial solution and see if you can find something similar to self-host:

How to use Docker layer caching in GitHub Actions.

Also this is explaining a bit the approach:

You can also just rely on a volume - in that container, the “daemon” docker container - so adding persistence there. When it dies - it will reuse the cache.

Looking at all this, I am making a modified helm chart. However the helm chart uses DinD and gitea/act-runner. However it cannot reach the docker endpoint. How did you all fix this in this long discussion. I do not see a general fix?