docker-flood-client
Flood client image. Source: https://git.k2patel.in/k2patel/docker-flood-client
Public access is read-only; account registration on this server is disabled. Report issues at https://github.com/k2patel/docker-flood-client/issues. For contributions, open an issue with a link to your branch or patch on another Git provider. Changes are reviewed and applied by the maintainer on Gitea.
Gitea Actions publishes docker.io/k2patel/floodui:latest only on manual runs.
Select main in Actions → Build and Push Custom Flood Image → Run workflow
and set the required flood_version release tag. The configured release is
v4.16.2. Repository pushes do not trigger builds.
This is a Flood-only image using the custom Dockerfile.client: it runs the
Flood web UI/API and connects to an external torrent service. It does not bundle
or start rTorrent. The Dockerfile uses the upstream pnpm lockfile and builds the server and client
assets; changing release families may require updating the build tooling.
Set Actions secrets DOCKER_USERNAME and DOCKER_TOKEN with Docker Hub write
access to k2patel/floodui. Builds run remotely on the Kubernetes runner for
linux/amd64, pushing directly to Docker Hub. Images are not loaded into the
runner image store, and the temporary builder and cache are removed afterward.
No image archives or build records are uploaded to Gitea, and no local container
builds are required.
Base image: Node.js 24.18.1 on Alpine Linux 3.24 stable (node:24.18.1-alpine3.24),
with the Alpine stable series explicitly selected.
The image build starts the actual Flood server and requires HTTP 200 before publishing; it does not start a torrent daemon.
The entrypoint uses npm run start, matching upstream v4.16.2, while retaining
--host=0.0.0.0 and --rundir=/server/. The upstream combined rTorrent stage
is deliberately excluded.
Distroless variant
The manual Build Distroless Flood workflow publishes k2patel/floodui:distroless
for the selected Flood release (default v4.16.2). It does not change latest.
The Alpine 3.24-derived runtime contains Node 24.18.1, the bundled Flood server/UI,
mediainfo, GNU df, their musl libraries, CA certificates and timezone data. The
final image is built from scratch, with no shell, npm/pnpm, package manager,
node_modules, source tree or build tools. It starts Node directly and remains
separate from rTorrent. Root UID, port 3000, and /server/db stay compatible.
Before publication, CI starts Flood inside the exact stripped filesystem and requires an HTTP 200 response; it also checks mediainfo and df can execute and that shell/package-manager binaries are absent. All builds run remotely, and the temporary builder/cache is removed afterward.
Change only the Compose image tag to k2patel/floodui:distroless; keep existing
mounts and connection settings. Revert to latest to roll back. A matching
rTorrent Compose overlay is provided in the docker-rtorrent repository.