GitLab Runner unable to run Docker commands

I have a GitLab Runner using a Shell Executor that needs to build a Docker container. When it executes the first Docker command it gets this error:

docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied'))

If I logon as the gitlab-runnner user and try to execute docker commands manually I get this error:

$ docker ps
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.47/containers/json": dial unix /var/run/docker.sock: connect: permission denied

A quick Google and I need to add the gitlab-runner to the Docker group to grant it permission to execute Docker:

sudo usermod -a -G docker $USER

GitLab – no runners for project

Setting up a new self-hosted GitLab, the pipeline for my project is stuck with this error:

… which looks like there are no runners available for the project. I know I have a runner available because I set one up yesterday, so taking a closer look.

In the CI/CD settings for my project, I think I see my shared runner:

Looking in the admin settings, it looks like when I set it up I used the tag ‘shared’:

The error says ‘no runners match all of the job’s tags: docker-test’, so I think what I need to do is change the tags on my runner to match. I edited the tags to remove ‘shared’ and replaced with ‘docker-test’ and now the job starts running! On to the next errors!

MacOS Sequoia local network access and the new ‘Allow [app name] to find devices on local network’ prompt

After upgrading to Sequoia a number of my installed apps sometime after the first boot popped up a prompt to ‘Allow [app name] to find devices on local network?’. Thinking this was odd I answered no for each of these and didn’t think any more of it. A couple of days later I realized I couldn’t access any websites running locally on my network, for example services running in containers on my Proxmox server. I could still ping their ips and get a response, but Chrome was saying ‘No route to host’.

After some Googling I found some posts with the same issue and it’s related to this prompt for accessing local devices. To enable the access after you’ve already answered no to the popup, go to System Settings, Privacy and Security, Local Network and enable access for any apps that need it: