big-builder/README.md

78 lines
1.9 KiB
Markdown
Raw Normal View History

2023-10-27 23:03:32 -06:00
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
------------------
2023-10-27 23:14:38 -06:00
1. Go get a runner registration token from your forgejo/gitea instance.
2. Decide in advance what tags you want to use.
2023-10-27 23:21:22 -06:00
Don't use the default tags, or it will think you want docker.
2023-10-27 23:14:38 -06:00
`big-builder,go,python3,hugo` isn't an awful choice.
3. Run the code block below.
4. Email me to let me know if these instructions worked for you!
2023-10-27 23:14:38 -06:00
```sh
mkdir /srv/big-builder
docker run --rm -it -u 0:0 -v /srv/big-builder:/app big-builder # This will ask you 3 questions
2023-10-27 23:14:38 -06:00
docker run -d --restart=always -v /srv/big-builder:/app:ro big-builder daemon
```
2023-10-27 23:03:32 -06:00
On my raspberry pi,
2023-10-27 23:14:38 -06:00
I used the tags `aarch64,big-builder,go,python3,hugo`.
2023-10-27 23:03:32 -06:00
2023-10-27 23:14:38 -06:00
More documentation is at
2023-10-27 23:03:32 -06:00
[gitea act runner](https://docs.gitea.com/usage/actions/act-runner).
Adding Other Packages
---------------------
Make your own image. Like so:
```Dockerfile
FROM big-builder
RUN apk --no-cache add nethack
2023-10-27 23:06:52 -06:00
```
2023-10-27 23:03:32 -06:00
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,
2023-10-27 23:18:23 -06:00
the runner just sits there,
like POST BIOS patiently waiting for someone to press F1.
2023-10-27 23:03:32 -06:00
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.
2023-11-29 18:02:37 -07:00
Note To Self
------------
```sh
~/runner/run.sh
```
I think I did it this way to isolate it from the rest of the homelab swarm?
But then why not just make a new swarm?