Garage einfach selbst hosten

Garage einfach selbst hosten

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
7 min

Garage ist ein leichtgewichtiger, S3-kompatibler Object Storage Service, der speziell furs Self-Hosting gebaut wurde. Anders als AWS S3 oder andere Managed-Anbieter ist Garage Open Source, lauft auf bescheidener Hardware und gibt dir die volle Kontrolle uber deine Daten. Wenn du nach einer selbst gehosteten Alternative zu teuren Cloud-Storage-Anbietern suchst, ist Garage eine starke Wahl.

Sliplane macht das Deployment von Garage super einfach. Mit einem One-Click-Preset hast du deinen eigenen S3-Storage in wenigen Minuten am Laufen - kein Server-Setup, kein Reverse Proxy, kein Infrastruktur-Stress.

Voraussetzungen

Bevor du loslegst, brauchst du einen Sliplane Account (kostenlose Testphase verfugbar).

Schnellstart

Sliplane bietet One-Click-Deployment mit Presets.

SliplaneGarage deployen >
  1. Klick auf den Deploy-Button oben
  2. Wahl ein Projekt aus
  3. Wahl einen Server aus (bei Neuanmeldung bekommst du einen 48-Stunden-Trial-Server)
  4. Klick auf Deploy!

Was das Preset beinhaltet

Das One-Click-Deploy oben nutzt Sliplane's Garage Preset. Das steckt drin:

  • Garage v2.3.0 Binary (wird beim ersten Deploy automatisch heruntergeladen)
  • Alpine 3.20 Base Image (stellt die Shell fur die Startup-Konfiguration bereit)
  • Zwei persistente Volumes: eines fur Metadaten (/var/lib/garage/meta) und eines fur Daten (/var/lib/garage/data)
  • LMDB als Datenbank-Engine fur Metadaten (schnell und zuverlassig fur Single-Node-Setups)
  • Admin API auf dem offentlichen Endpoint mit /health Healthcheck
  • Automatisch generierte Credentials fur RPC Secret, Admin Token und Metrics Token
  • TOML Config wird beim Start automatisch geschrieben (keine manuelle Config-Datei notig)
  • Automatisches Cluster-Layout wird beim ersten Start konfiguriert, sodass der Node sofort einsatzbereit ist

Das Preset startet eine Single-Node Garage-Instanz mit replication_factor = 1 - die richtige Einstellung fur ein Single-Server-Deployment.

Nachste Schritte

Sobald Garage auf Sliplane lauft, erreichst du die Admin API uber die von Sliplane bereitgestellte Domain (z.B. garage-xxxx.sliplane.app).

Cluster-Layout

Das Preset konfiguriert das Cluster-Layout automatisch beim ersten Start, sodass dein Node sofort einsatzbereit ist. Du kannst das Layout prufen, indem du den Cluster-Status abfragst:

curl -H "Authorization: Bearer <dein-admin-token>" https://<deine-domain>/v2/GetClusterStatus

Ersetze <deine-domain> mit deiner Sliplane-Domain und <dein-admin-token> mit dem GARAGE_ADMIN_TOKEN Wert aus den Umgebungsvariablen deines Services.

Access Keys und Buckets erstellen

Erstell einen Access Key:

curl -X POST -H "Authorization: Bearer <dein-admin-token>" \
  -H "Content-Type: application/json" \
  -d '{"name": "my-key"}' \
  https://<deine-domain>/v2/CreateKey

Speicher die accessKeyId und secretAccessKey aus der Antwort. Dann erstell einen Bucket:

curl -X POST -H "Authorization: Bearer <dein-admin-token>" \
  -H "Content-Type: application/json" \
  -d '{"globalAlias": "my-bucket"}' \
  https://<deine-domain>/v2/CreateBucket

Gib deinem Key Zugriff auf den Bucket:

curl -X POST -H "Authorization: Bearer <dein-admin-token>" \
  -H "Content-Type: application/json" \
  -d '{"bucketId": "<bucket-id>", "accessKeyId": "<access-key-id>", "permissions": {"read": true, "write": true, "owner": true}}' \
  https://<deine-domain>/v2/AllowBucketKey

S3 Clients verbinden

Die S3 API lauft auf Port 3900 im Container. Andere Services auf demselben Sliplane Server konnen sich uber den internen Hostnamen verbinden (z.B. garage-xxxx.internal:3900). Nutz den Access Key und das Secret, die du oben erstellt hast, als S3-Credentials mit garage als Region.

Umgebungsvariablen

Das Preset konfiguriert diese wichtigen Umgebungsvariablen:

VariableZweck
GARAGE_VERSIONGarage Binary-Version zum Download (Standard: v2.3.0)
GARAGE_ADMIN_TOKENToken fur die Authentifizierung bei Admin API Requests
GARAGE_METRICS_TOKENToken fur den Zugriff auf den /metrics Endpoint (Prometheus-Format)
GARAGE_RPC_SECRETInternes Secret fur die Node-zu-Node-Kommunikation
RUST_LOGLog-Level (Standard: garage=info)

Logging und Troubleshooting

Garage loggt standardmassig nach stdout, also sind alle Ausgaben im Sliplane Log-Viewer sichtbar. Wenn du mehr Details brauchst, andere RUST_LOG auf garage=debug und deploye neu. Fur allgemeine Docker-Log-Tipps schau dir unseren Post zu Docker Logs an.

Kostenvergleich

Du kannst Garage auch bei anderen Cloud-Anbietern selbst hosten. Hier ein Preisvergleich der gangigsten Optionen:

AnbietervCPURAMDiskMonatliche KostenHinweis
Sliplane22 GB40 GB€9 (~$10.65)Flatrate, 1 TB Bandbreite, SSL inklusive
Fly.io22 GB40 GB~$18Disk und Bandbreite separat berechnet
Render12 GB40 GB~$35100 GB Bandbreite, Disk separat berechnet
Railway22 GB40 GB~$67 + $20 PlanPro-Plan-Minimum, nutzungsbasiert, Bandbreite separat
Klick hier um zu sehen, wie diese Zahlen berechnet wurden.

(Angenommen eine dauerhaft laufende Instanz mit 730 Stunden/Monat)

  • Sliplane: pauschal €9/Monat fur den Base Server. Unbegrenzte Services auf demselben Server, 1 TB Egress und SSL inklusive.
  • Fly.io: shared-cpu-2x 2 GB = $11.83/Mo + 40 GB Volume × $0.15/GB = $6 -> ~$17.83/Mo. Egress wird separat berechnet ($0.02/GB in der EU).
  • Render: nachster Vergleich ist Standard ($25, 1 vCPU / 2 GB) plus 40 GB Disk × $0.25/GB = $10 -> ~$35/Mo. Pro (2 vCPU / 4 GB) kostet $85/Mo + Disk.
  • Railway (Pro Plan): CPU 2 × $0.00000772/s × 2,628,000 s = $40.57; RAM 2 × $0.00000386/s × 2,628,000 s = $20.29; Volume 40 × $0.00000006/s × 2,628,000 s = $6.31 -> ~$67/Mo Compute, plus $20/Mo Pro-Plan-Minimum und $0.05/GB Egress.

Bandbreitenkosten konnen bei nutzungsbasierten Anbietern schnell steigen. Nutz unser Bandbreiten-Kostenvergleichs-Tool um zu sehen, was dein Egress bei jeder Plattform kosten wurde.

FAQ

Wofur kann ich Garage nutzen?

Garage funktioniert uberall dort, wo du S3 nutzen wurdest: Datei-Backups, Static-Website-Hosting, Media-Storage fur Web-Apps oder als Backend fur Tools wie Nextcloud oder Duplicati. Es unterstutzt die Standard-S3-API, also funktionieren die meisten S3-kompatiblen Clients und Libraries direkt.

Kann ich den S3-Regionsnamen andern?

Ja. Das Preset nutzt standardmassig garage als S3-Region. Wenn du einen anderen Regionsnamen brauchst, musst du die TOML Config anpassen, die der Startup-Command generiert. Das kannst du uber die Command-Einstellungen deines Services in Sliplane machen.

Wie update ich Garage?

Andere die GARAGE_VERSION Umgebungsvariable in deinen Service-Einstellungen (z.B. von v2.3.0 auf eine neuere Version) und deploye neu. Schau auf der Garage Releases-Seite nach der neuesten stabilen Version. Garage ubernimmt Daten-Migrationen zwischen Minor-Versionen automatisch.

Gibt es Alternativen zu Garage?

Ja. MinIO ist der beliebteste S3-kompatible Self-Hosted Storage, braucht aber mehr Ressourcen. SeaweedFS ist eine weitere Option fur verteilten Storage. Fur Managed-Losungen schau dir unsere Liste von 5 gunstigen Object-Storage-Anbietern an. Wenn du nur File-Sync statt S3 brauchst, schau dir OpenCloud an.

Ist ein Single-Node Garage-Setup zuverlassig?

Fur personliche Projekte, kleine Teams und unkritische Workloads funktioniert ein Single-Node-Setup super. Garage nutzt LMDB fur Metadaten-Storage, was crash-safe ist. Deine Daten werden in Sliplane Volumes persistiert, uberleben also Container-Neustarts. Fur Produktions-Workloads, die Redundanz brauchen, solltest du mehrere Garage-Nodes auf verschiedenen Servern betreiben.

Garage jetzt selbst hosten - ganz einfach!

Sliplane gibt dir alles, was du brauchst, um deinen eigenen S3-kompatiblen Object Storage zu betreiben.