Using Shoutrrr as a Docker Container¶
Overview¶
The Shoutrrr Docker image provides a lightweight containerized version of the Shoutrrr CLI, built on Alpine Linux for minimal size and broad compatibility. It supports all architectures (amd64, arm64, arm/v6, i386, riscv64) and is available on Docker Hub (circa10a/shoutrrr). Tags include latest (stable production), versioned tags (e.g., v0.8.0), and latest-dev (development snapshots).
Usage¶
docker pull circa10a/shoutrrr:latest
Run Shoutrrr CLI commands inside the container using docker run.
The entrypoint is /shoutrrr, so commands like send, generate, verify work directly.
| Tag Examples | Description |
|---|---|
latest |
Latest stable release. |
vX.Y.Z |
Specific version (e.g., v0.8.0). |
latest-dev |
Latest development snapshot. |
amd64-latest |
Platform-specific (e.g., amd64, arm64v8). |
Note
The image includes CA certificates and timezone data. No volumes are required by default, but mount if needed for custom configs or stdin input. Environment variables can override flags (e.g., SHOUTRRR_URL for --url).
Environment Variables¶
- Use uppercase flag names prefixed with
SHOUTRRR_(e.g.,SHOUTRRR_MESSAGEfor--message).
Examples¶
Send a Notification¶
Example
docker run --rm circa10a/shoutrrr:latest send --url "discord://abc123@123456789" --message "Hello, Docker!"
Notification sent
Generate a Service URL¶
Example
docker run --rm -it circa10a/shoutrrr:latest generate discord
Generating URL for discord using basic generator
Token: abc123
WebhookID: 123456789
URL: discord://abc123@123456789
Verify a URL with Verbose Output¶
Example
docker run --rm circa10a/shoutrrr:latest verify --url "slack://token-a/token-b/token-c"
URL valid
Send from Stdin with Environment Variables¶
Example
echo "Message from stdin" | docker run --rm -i -e SHOUTRRR_URL="slack://token-a/token-b/token-c" -e SHOUTRRR_MESSAGE="-" circa10a/shoutrrr:latest send
Reading from STDIN...
Read 20 byte(s)
Notification sent
Multi-Architecture Pull and Run¶
Example
docker pull circa10a/shoutrrr:arm64v8-latest
docker run --rm circa10a/shoutrrr:arm64v8-latest --version
shoutrrr version latest
Notes¶
- Multi-Architecture: Use platform-specific tags (e.g.,
arm64v8-latest) or let Docker select automatically withlatest. - Timeouts: Inherits Shoutrrr's 10-second send timeout.
- Volumes: Mount
/etc/ssl/certsif custom CA certs are needed, or/inputfor file-based messages. - Updates: Pull latest images regularly. For production, pin to versioned tags.
- Debugging: Add
-vfor verbose output in commands.