An S3 object store so reliable you can run it outside datacenters by DeuxFleurs with tailscale.
10K+
A Docker image for running Garage, a distributed object storage service compatible with Amazon S3, with integrated Tailscale client for secure networking. Garage is made by deuxfleurs: https://garagehq.deuxfleurs.fr
To enable it you must:
New releases follow the Garage releases from DeuxFleurs.
Their changelog is available here: https://git.deuxfleurs.fr/Deuxfleurs/garage/releases
docker run -d
--name garage
--cap-add=NET_ADMIN
--cap-add=SYS_MODULE
--device=/dev/net/tun
-p 9000:9000
-p 3901:3901
-p 3902:3902
-p 3903:3903
-p 4080:4080
-v /path/to/config:/config
-v /path/to/data:/data
-v /path/to/meta:/meta
-v /path/to/tailscale_store:/var/lib/tailscale
-e TS_AUTHKEY="tskey-auth-xxxxx"
-e TS_HOSTNAME="garage-node1"
-e ADMIN_TOKEN="your-secure-token"
-e WEBUI_ENABLED="true"
waazaafr/garage-s3-tailscale:latest
| Variable | Description |
|---|---|
ADMIN_TOKEN | Admin API authentication token (required) |
TS_AUTHKEY | Tailscale authentication key (required) |
TS_HOSTNAME | Hostname for this node in Tailscale network (required) |
| Variable | Default | Description |
|---|---|---|
GATEWAY | 0.0.0.0 | Gateway bind address for S3 API |
BLOCK_SIZE | 5 | Block size in MB |
COMPRESSION_LEVEL | 2 | Compression level (0-9) |
RPC_SECRET | Auto-generated | RPC secret for cluster communication (64 hex chars) |
REPLICATION_FACTOR | 1 | Number of copies for each object |
CONSISTENCY_MODE | degraded | Consistency mode (consistent, degraded, dangerous) |
TAILSCALE_FORCE_PORT | false | Force specific UDP port for Tailscale |
TAILSCALE_UDP_PORT | 25565 | UDP port to use when TAILSCALE_FORCE_PORT is true |
WEBUI_ENABLED | false | No |
Note: The Tailscale IP address is automatically detected from the tailscale0 interface and does not need to be manually configured.
/config – Garage configuration (garage.toml and secrets)/data – Object storage data (ensure sufficient space)/meta – Metadata storage/var/lib/tailscale – Tailscale state persistence9000 – Garage internal RPC3901 – Garage public RPC3902 – S3 web interface3903 – Admin APIThe container requires the following capabilities for Tailscale to function:
NET_ADMIN – Network administrationSYS_MODULE – Load kernel modules/dev/net/tun – TUN/TAP device accessOn container start:
TS_AUTHKEY and TS_HOSTNAME.tailscale0 interface./config/garage.toml does not exist, a new configuration is generated.RPC_SECRET is empty, a random 64-character hexadecimal secret is generated./config/garage.toml exists, it is checked against current environment variables and updated only if values differ.Generate a Tailscale auth key from your Tailscale admin console:
TS_AUTHKEY=======================================================================
Feel free to join me on https://discord.gg/p9xkjEw8ts
If you like this, consider buing me a coffee:
https://buymeacoffee.com/waazaa
If you need an UnRAID license follow this link: https://unraid.net/pricing?via=4c3f80
Content type
Image
Digest
sha256:fdb4b0991…
Size
132.1 MB
Last updated
9 days ago
docker pull waazaafr/garage-s3-tailscale