56 lines
2.5 KiB
Markdown
56 lines
2.5 KiB
Markdown
# docker-rtorrent
|
|
This is plain simple rtorrent with proxy and custom rtorrent.rc
|
|
|
|
Base image: Alpine Linux 3.24 stable (`alpine:3.24`), including its latest patch updates.
|
|
|
|
Source: https://git.k2patel.in/k2patel/docker-rtorrent
|
|
|
|
Public access is read-only; account registration on this server is disabled.
|
|
Report issues at https://github.com/k2patel/docker-rtorrent/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 builds and publishes `docker.io/k2patel/rtorrent:latest`
|
|
on pushes to `main`, manually, and monthly on the third day at 00:00 UTC.
|
|
The repository requires Actions secrets `DOCKER_USERNAME` and `DOCKER_TOKEN`
|
|
(a Docker Hub token with write access to `k2patel/rtorrent`).
|
|
|
|
Builds run on the remote Kubernetes runner for `linux/amd64`, matching the
|
|
previous GitHub build. Buildx pushes directly to Docker Hub without loading
|
|
the image into the runner's Docker image store. Its temporary builder and
|
|
build cache are removed after each job; no image archives or build records
|
|
are uploaded to Gitea, and no local container builds are required.
|
|
|
|
# Latest 0.16 version caveat
|
|
- since version 0.16 explicitly set `network.bind_address.set = 0.0.0.0`, when ipv6 is disabled on kernel.
|
|
|
|
## Distroless runtime
|
|
|
|
`docker.io/k2patel/rtorrent:latest` is the only maintained image variant.
|
|
The default Dockerfile exports the Alpine 3.24 rTorrent binary, musl libraries,
|
|
CA certificates and timezone/terminal data into a `scratch` image. It contains
|
|
no shell, package manager, BusyBox, or build tools. The native launcher removes
|
|
the stale session lock and execs rTorrent; it also supplies the TCP health check.
|
|
CI starts rTorrent and verifies an SCGI XML-RPC request before publication.
|
|
|
|
Use the default Compose file with the existing `.env` and mounted data:
|
|
|
|
```sh
|
|
docker compose pull
|
|
docker compose up -d --force-recreate
|
|
```
|
|
|
|
For an existing custom Compose file, use `:latest` for both images and replace
|
|
any shell-based rTorrent health check with:
|
|
|
|
```yaml
|
|
healthcheck:
|
|
test: ["CMD", "/usr/local/bin/rtorrent-entrypoint", "--healthcheck"]
|
|
```
|
|
|
|
The separate `:distroless` tag and Compose overlay are retired. Both services in
|
|
the default Compose file now use distroless `:latest`. Root UID, HOME=/root,
|
|
SCGI port 5001, download paths and the session volume remain supported.
|
|
Mounted `rtorrent.rc` execute hooks must use programs available in the image;
|
|
shell commands and arbitrary external utilities are unavailable.
|