Register Multiple Runners on Same Host

It’s possible to run multiple GitLab runners on the same host by encapsulating the runner and its executor dependencies inside a container.

For example, since I use GitLab with the Docker executor, I created a container that encapsulates the GitLab runner + a docker engine. This way, the container is acting as a virtual host (much like a VM) and the jobs run inside that container, isolated from the host. I can then easily deploy several of these on the same host.

To launch these VM-like containers, I used Docker plus the Sysbox runtime, as it allows deploying such containers easily and without using privileged containers.

There is a blog on this here. Check out section “GitLab Runner & Docker in a System Container”.

Hope that helps!