Gitea CI/CD OCI image, that doesn't require the Docker socket
Go to file
Neale Pickett b07124f63d oops 2023-10-27 23:06:52 -06:00
Dockerfile Yep, works 2023-10-27 23:03:32 -06:00
LICENSE.md Yep, works 2023-10-27 23:03:32 -06:00
README.md oops 2023-10-27 23:06:52 -06:00
entrypoint.sh Yep, works 2023-10-27 23:03:32 -06:00

README.md

Big Builder

I personally don't want to be running CI/CD automation with full access to my Docker socket.

I made this image to hold all my typical build toolset, and also the gitea runner, so now I can just say runs-on: big-builder, and stuff works without docker.

This does mean I can't use github actions. That's okay with me: I don't want to be running node on my Raspberry Pi, either. I know how to use the Bourne shell, so I'm able to do everything I want that way.

How To Set This Up

This wants its files to live in /app. After you do the registration step, that can be mounted read-only. But it will want to write its token in the registration step.

You should provide custom tags: that's how you keep it from trying to use docker. On my raspberry pi, I used ["big-builder", "aarch64", "go", "python3", "hugo"].

Otherwise, just set this up the same way you would set up the gitea act runner.

To run in daemon mode, you have to give it daemon on the commandline: I didn't make a fancypants script to guess the command.

Adding Other Packages

Make your own image. Like so:

FROM big-builder
RUN apk --no-cache add nethack

Even better, steal this one's Dockerfile and add stuff to it. You shouldn't trust my image to be malware-free.

Caveats

Right now (October 2023), if anything tries to read from the tty, the runner just sits there forever. This is a problem with the runner that they might fix one day. Just something to bear in mind: I spent a bit of time chasing this one down.