Publish a linuxserver-style Docker image for the emulebb-rust headless eD2K/Kad core to GHCR (ghcr.io/emulebb/emulebb-rust, latest + versioned), built and pushed by this repo's CI.
This is the enabling prerequisite for the suite Docker bundle — without the image the Docker form cannot start. Design: emulebb-tooling docs/active/SUITE-DOCKER.md.
Shape:
- linuxserver convention: s6-overlay,
PUID/PGID, TZ, /config (state) + /data (downloads).
- Writes downloads under
/data/ed2k so hardlink + atomic-move to /data/media works across the shared volume.
- Runs behind an optional Gluetun namespace (
network_mode: "service:gluetun"); no own ports — the P2P/control ports are published on the gluetun service.
- Multi-arch later; amd64 first.
Acceptance:
Tracked on the eMuleBB Suite board (Product = emulebb-rust, Phase 2).
Publish a linuxserver-style Docker image for the emulebb-rust headless eD2K/Kad core to GHCR (
ghcr.io/emulebb/emulebb-rust,latest+ versioned), built and pushed by this repo's CI.This is the enabling prerequisite for the suite Docker bundle — without the image the Docker form cannot start. Design: emulebb-tooling
docs/active/SUITE-DOCKER.md.Shape:
PUID/PGID,TZ,/config(state) +/data(downloads)./data/ed2kso hardlink + atomic-move to/data/mediaworks across the shared volume.network_mode: "service:gluetun"); no own ports — the P2P/control ports are published on the gluetun service.Acceptance:
ghcr.io/emulebb/emulebb-rust:latest+ a version tag on release.PUID/PGID/TZand persists state under/config, downloads under/data./api/v1+ eD2K TCP + Kad UDP reachable when ports are published on a fronting service.Tracked on the eMuleBB Suite board (Product = emulebb-rust, Phase 2).