Expand description
The warm caches runner containers share and keep between jobs: each profile’s read-only snapshot, each slot’s volume (its layers’ changes and its Docker Engine’s data), the shared pnpm store and Maven repository, and the Docker Hub mirror on the runners’ network. Owns their names, mounts and lifecycle; it never decides when a runner starts, and it never touches a volume a running container uses.
Structs§
- Emptied
- A shared cache
trim_sharedemptied. - Names
- The names of everything runnerd creates in Docker, under one prefix:
runnerd, or another for tests. - Reseed
- What
reseedruns on: the profile’s image and limits, its slots and the isolation backend. - Trimmed
- What
trim_sharedmeasured and emptied.
Constants§
- MIRROR_
IMAGE - The Docker Hub pull-through cache (
registry3.1.2, multi-platform index).
Functions§
- finish_
reseed - Waits for a seed container to exit, removes it, and returns its output. Also takes over a seed container an
earlier daemon left running: stopping it between its
rmandmvwould lose that snapshot layer. - mirror_
body - The mirror container: Docker Hub through a proxy registry, which refuses pushes, so a job can only make it fetch what Docker Hub serves. Content not pulled again within the TTL expires. No published port.
- mirror_
down - Stops the mirror; its storage stays.
- mirror_
up - Starts the mirror unless it runs.
- prepare
- Creates what a profile’s runner in
slot(1-based) mounts and joins, if missing. - reseed
- Makes slot 1’s layers the profile’s new snapshot and drops every slot’s own layer changes (
image/seed.sh), if slot 1 changed at leastmin_changes. Call only while none of the profile’s slots runs. Returns the seed container’s output. - runner_
mounts - What a runner container in slot
slot(1-based) of the profile mounts (paths fromimage/Dockerfile). - trim_
shared - Empties the shared caches that outgrew their limit; call only while no runner runs.
- volumes
- Every cache volume the config’s profiles use, what it holds and its limit, with size 0.