Garage is an S3-compatible distributed object storage service designed for self-hosting at a small-to-medium scale.
Garage is designed for storage clusters composed of nodes running at different physical locations, in order to easily provide a storage service that replicates data at these different locations and remains available even when some servers are unreachable. Garage also focuses on being lightweight, easy to operate, and highly resilient to machine failures.
This template is designed for out-of-the-box usage. However, you still need to configure a few things before everything works.
api
port, and the web UI can be accessed from the web
port.openssl rand -hex 32
to generate a new secret key and paste it into the GARAGE_RPC_SECRET
environment variable. It is strongly recommended to change the secret key before making the service public to ensure the security of the service, even if you are not going to use the RPC function.root_domain
in your configuration. It should be .<your-domain>
.If you need to connect other Garage instances from outside the network, you may need to configure the RPC public address. Edit the RPC public address in the config (Settings → Config Editor) to the forwarded hostname and port of the rpc
port of this Garage instance.
To upgrade Garage to a newer version, change the image tag of the garage
service. Remember to check the release notes before switching to a new version.