Blog · Hosting-Vergleiche
Managed Hosting für Docker Compose 2026: wer eine compose.yaml mit HTTPS, Backups und Logs deployt
Du hast eine compose.yaml, die auf deinem Laptop läuft, und willst dieselbe Datei online haben, mit HTTPS, Backups und Logs, ohne einen Server zu verwalten. 2026 führen die meisten Managed-Hoster sie nicht aus: Sie wandeln sie um, wollen ein anderes Format oder führen nur einen Teil davon aus. Pethost führt sie für 9,99 € im Monat unverändert aus. Von vierzehn anderen Managed-Hostern, deren Seiten wir gelesen haben, tut das nur Elestio, für eine eingefügte Datei mit fertigen Images.
- Führen die Datei aus und pflegen den Server: Pethost (9,99 € im Monat: 2 vCPU, 3 GB, 30 GB) und Elestio (19,71 $: 2 vCPU, 4 GB).
- Wandeln sie in eigene Services um: Railway, Sliplane, Hostim.dev, Google Cloud Run. Fly.io führt sie in einer einzigen Machine aus und ignoriert
volumes:. - Kein Compose: Render, Northflank, DigitalOcean App Platform, Zeabur. Auf einem Server, der deiner bleibt: Coolify, Dokploy.
- Drei Web-Services, ein Worker und ein Postgres: 9,99 € bei Pethost, 11,00 € bei Hostim.dev, 19,71 $ bei Elestio, 23,15 $ bei Railway, 28,80 € bei Sliplane. Allein die 3 GB RAM von Starter kosteten zu den Preisen von Railway 30 $ im Monat.
Welche Hoster eine compose.yaml 2026 unverändert deployen
Mit einer Compose-Datei kann ein Hoster vier Dinge tun: sie mit Docker Compose ausführen, sie einmal in Services seiner eigenen Art umwandeln, einen Teil davon ausführen oder dich die Datei in seinem Format neu schreiben lassen.
| Hoster | Die compose.yaml | Was übernommen wird | Wer den Server pflegt |
|---|---|---|---|
| Pethost | Führt sie unverändert aus, oder lehnt sie ab und sagt, was zu schreiben ist | Builds, benannte Volumes, depends_on, Healthchecks, .env | Pethost |
| Elestio | Führt eine eingefügte Datei aus, als Pipeline auf einer VM | Keys nicht aufgelistet; dokumentiert für fertige Images | Elestio |
| Fly.io | Führt einen Teil davon aus, in einer einzigen Machine | Ein build:, ein öffentlicher Port; volumes: wird ignoriert | Fly.io |
| Railway | Wandelt jeden Service in einen Railway-Service um | Images, Variablen, ein Volume pro Service; kein depends_on | Railway |
| Sliplane | Wandelt sie um: Ein Parser liest eine Teilmenge | Services, Volumes, Umgebungsvariablen | Sliplane |
| Hostim.dev | Wandelt jeden Service in eine App mit eigenem Tarif um | Volumes; Datenbanken werden zu gemanagten | Hostim.dev |
| Google Cloud Run | Wandelt sie in einen Service mit mehreren Containern um | Builds, depends_on, env_file; Volumes werden zu Bucket-Ordnern | |
| Render | Nein: eine eigene render.yaml | Nichts | Render |
| Northflank | Nichts gefunden: eigene Templates | Nichts | Northflank |
| DigitalOcean App Platform | Nein: eine eigene App Spec | Nichts; Volumes gibt es dort nicht | DigitalOcean |
| Zeabur | Nein: ein eigenes Template-YAML | Nichts | Zeabur, auf einem darüber gekauften Server |
| Coolify, Dokploy | Führen sie aus, auf einem Server, den du verbindest | Builds, Volumes, Healthchecks, depends_on | Du |
Bei Heroku, Koyeb und Sevalla haben wir keinen Compose-Deploy gefunden; Azure Container Apps wandelt eine Datei mit az containerapp compose create um.
Eine compose.yaml bei drei Arten von Hostern
Nimm ein kleines, echtes Projekt: einen Web-Service und einen Worker, beide aus einem Dockerfile gebaut, und ein Postgres mit seinen Daten in einem benannten Volume.
services:
web:
build: .
ports: ["3000:3000"]
env_file: .env
depends_on:
db: {condition: service_healthy}
worker:
build: .
command: node worker.js
env_file: .env
depends_on:
db: {condition: service_healthy}
db:
image: postgres:17
env_file: .env
volumes: ["pgdata:/var/lib/postgresql/data"]
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
volumes:
pgdata:
Railway wandelt sie in drei Services um
Zieh die Datei in ein Railway-Projekt, und „deine Services (und alle gemounteten Volumes) werden automatisch als vorgemerkte Änderungen importiert“. Ab dann sind es Railway-Services: Railway „führt docker-compose.yml-Dateien nicht direkt aus“. Aus build: wird „Deploy aus einem GitHub-Repository mit einem Dockerfile“, und für depends_on gibt es „keine direkte Entsprechung. Anwendungen sollten Verbindungsversuche beim Start wiederholen“.
Fly.io führt sie in einer einzigen Machine aus
Mit [build.compose] in der fly.toml und flyctl v0.3.152 oder neuer gilt: Fly „baut und startet Compose-Services als Container innerhalb einer einzigen Machine“. fly deploy „verlangt, dass genau ein Service in der Compose-Datei build angibt“; unsere hat zwei. Fly „ignoriert volumes:-Deklarationen“, also schreibt Postgres in „ein flüchtiges Overlay, das bei Neustart oder neuem Deploy gelöscht wird“, bis über [mounts] ein Fly Volume gemountet ist. Und die Container teilen sich einen Netzwerk-Namespace: Die Datenbank ist unter localhost:5432 erreichbar, nicht unter db:5432.
Pethost führt sie unverändert aus
Wir führen die Datei mit Docker Compose aus und korrigieren nichts daran. Die Maschine baut beide Images, pullt postgres:17, wartet auf den Healthcheck von db und startet den Rest: das Verhalten von Compose selbst. Was wir nicht ausführen, etwa privileged oder den Docker-Socket, wird abgelehnt, bevor irgendetwas erstellt wird, zusammen mit dem, was du stattdessen schreibst. Unsere Datei wird nicht abgelehnt, und ihre Zeile ports: bleibt. Die Maschine fragt einen veröffentlichten Port, was er ist: Dieser antwortet mit HTTP, also wird er unter der Adresse des Projekts über HTTPS ausgeliefert, und Port 3000 wird daneben nicht auf der Maschine geöffnet. Ein veröffentlichter Port von etwas anderem, etwa einer Datenbank, wird auf der Maschine so geöffnet, wie er dasteht. Willst du die Adresse selbst wählen, nennt eine Route sie:
x-pethost:
routes:
- {host: app.sam.pethost.app, service: web, port: 3000}
Die API-Referenz enthält jede Regel. Mit einem KI-Coding-Agenten schreibst du nichts davon selbst:
Du sagst: Deploy dieses Compose-Projekt und schick mir den Link.
- CreateTransfer app.tgz hochgeladen
- CreateProject app: wird gebaut
- GetOperation erfolgreich
Der Agent antwortet: Es ist live unter https://app.sam.pethost.app. Deine compose.yaml ist unverändert.
Docker-Compose-Support, Hoster für Hoster
Sliplane: ein Parser für eine Compose-Datei
In der Dokumentation von Sliplane steht: „Docker-Compose-Dateien funktionieren noch nicht.“ Ein Parser liest „eine Teilmenge der Docker-Flags und Compose-Optionen“ in Services ein, die du prüfst. Sliplane rechnet ab wie wir, mit einem Festpreis pro Server: siehe Sliplane-Alternativen.
Google Cloud Run: gcloud run compose up
gcloud run compose up compose.yaml deployt „einen einzelnen Cloud-Run-Service mit mehreren Containern“. Die Seite von Google trägt keinen Preview-Hinweis und nennt den Befehl „ideal für die Entwicklung“. Ein Service skaliert auf null, solange du nicht für eine Mindestinstanz zahlst.
Render, Northflank und DigitalOcean App Platform: Docker Compose wird nicht unterstützt
Render liest seinen Blueprint render.yaml und nichts aus einer Compose-Datei; der Wunsch „Support für docker-compose“ auf seinem Feedback-Board ist seit dem 17. Juli 2019 offen. Northflank hat Templates, DigitalOcean eine App Spec, und „App Platform unterstützt keine Volumes“. Die Preise stehen in Railway vs Render vs Fly.io: Preise.
Elestio: eine eigene docker-compose-Pipeline auf einer gemanagten VM
Elestio führt eine eingefügte Compose-Datei als „CI/CD-Pipeline“ auf einer VM aus, die es mit Patches aktuell hält: 19,71 $ im Monat für 2 vCPU und 4 GB. Die Dokumentation stellt das für Images vor, die „bereits in einer öffentlichen oder privaten Docker-Registry verfügbar“ sind. Die Tarife enthalten „automatische Backups, SSL-Zertifikate, Sicherheitsupdates, Betriebssystem-Patches“; ob die Volumes einer Pipeline in diesen Backups stecken, steht dort nicht.
Coolify und Dokploy: Die Datei läuft, der Server ist deiner
Coolify und Dokploy sind kostenlos und führen die Datei mit ihren Builds, Volumes und Healthchecks aus. Den Server mietest und pflegst du weiter selbst, auch mit Coolify Cloud (5 $ im Monat) und Dokploy Cloud (4,50 $ pro Server), die nur das Panel hosten: siehe die selbst gehosteten Panels im Vergleich und die beiden Cloud-Panels.
HTTPS, Backups und Logs: Was zur Compose-Datei dazukommt
Compose startet Container. Das Zertifikat, die Kopie des Volumes und das Log, das du eine Woche später noch lesen kannst, kommen vom Hoster. Jeder Managed-Hoster hier gibt dir eine HTTPS-Adresse, wobei eine eigene Domain bei Cloud Run einen Load Balancer braucht.
| Hoster | Backups der Volumes | Logs |
|---|---|---|
| Pethost | Nächtlich, außerhalb der Maschine, 14 Tage aufbewahrt | Jeder Request 30 Tage lang, dazu die Logs der Container selbst |
| Elestio | Täglich, 7 Tage aufbewahrt; Compose-Volumes nicht bestätigt | Live-Logs und Verlauf |
| Railway | Geplant, kostenpflichtig; tägliche 6 Tage aufbewahrt | 7 Tage bei Hobby |
| Sliplane | Täglich, 7 Tage aufbewahrt | 15.000 Zeilen, 7 Tage |
| Hostim.dev | Täglich; eine Wiederherstellung läuft über den Support | Bis zu 7 Tage |
| Fly.io | Tägliche Snapshots der Fly Volumes, standardmäßig 5 Tage | 7 Tage |
Postgres ist bei Pethost ein Container in deinem Projekt, im nächtlichen Backup: keine gemanagte Datenbank mit Replikaten oder Point-in-Time-Recovery. Die von Hostim.dev ist ein gemanagter Cluster mit Failover, und Fly.io verkauft eine ab 38 $ im Monat.
Was Managed Hosting für Docker Compose mit drei Apps, einem Worker und einem Postgres kostet
Ein Workload bei jedem Hoster, der einen Preis dafür nennt: drei Web-Services mit je 512 MB, die immer laufen, ein Worker, ein Postgres und 10 GB Traffic im Monat. Das sind etwa 2,5 GB der 3 GB von Starter.
| Hoster | Preis im Monat |
|---|---|
| Pethost Starter | 9,99 € |
| Hostim.dev | 11,00 € |
| Fly.io, eigenes Postgres | 17,30 $ |
| Elestio | 19,71 $ |
| Railway | 23,15 $ |
| Sliplane | 28,80 € |
| Fly.io, Managed Postgres | 53,24 $ |
| Google Cloud Run | 63,49 $ |
Die Zahl von Railway zählt nur den RAM, mit unserer Annahme von 0,5 GB pro Service: Jede 0,1 vCPU, die ein Service nutzt, kostet 2 $ mehr. Die von Fly.io sind Preise in Ashburn, die niedrigere mit einem Postgres, das du selbst betreibst; die von Cloud Run gilt zu den Preisen von us-central1, mit Cloud SQL.
Die Preise unterscheiden sich weniger als das, was sie bringen. Railway berechnet 10 $ im Monat für ein Gigabyte RAM und 20 $ für eine vCPU, also kosteten die 3 GB von Starter dort 30 $, noch vor jeder CPU. Der Server von Sliplane für 9 € hat 1 vCPU und 1 GB, und der, der diesen Workload trägt, kostet 28,80 €. Hostim.dev berechnet jede App einzeln, 2,50 € für 1 GB: Diese fünf kommen auf 11,00 €, und eine sechste ist ein weiterer Tarif. Bei Pethost decken 9,99 € alles ab, was du betreibst, und das nächste Projekt kostet nichts, solange es hineinpasst.
Was du für 9,99 € im Monat bekommst, schon erledigt
Bei Starter, für 9,99 € im Monat zzgl. MwSt., ist die Arbeit erledigt, die Docker Compose nicht macht:
- 2 vCPU, 3 GB, 30 GB für so viele Projekte, wie hineinpassen
- 14 Nächte verschlüsselte Backups, außerhalb der Maschine
- 30 Tage Request-Logs
Ebenfalls im Preis: eine HTTPS-Adresse für jedes Projekt, ein Deploy bei jedem Push auf GitHub, bei dem ein früherer Commit nur einen Schritt entfernt ist, SSH in jeden Container und Sicherheitsupdates, die sich selbst installieren.
Das ist das beste Preis-Leistungs-Verhältnis, das wir für eine Compose-Datei gefunden haben: der meiste RAM fürs Geld, und die Arbeit drumherum ist erledigt. Grow, doppelt so groß, kostet 17,99 €.
Und wenn ich einfach einen VPS für Docker Compose miete?
Kannst du: Compose läuft auf jedem Server, und Coolify oder Dokploy setzen ein Panel darauf. Zwei Dinge vorab. Ein Agent auf einem nackten Server arbeitet als root über SSH: Nichts sagt ihm, was dort läuft, und ein falscher Befehl legt den Proxy oder die Datenbank lahm. Bei Pethost arbeitet er über Tools, die für Agenten gemacht sind, und seine Shell ist in deinen Containern, nie auf der Maschine.
Und ein Server kostet nicht sicher weniger. Hetzner, den Anbieter, den die meisten Anleitungen nennen, hat 2026 zweimal die Preise erhöht, und die günstige Reihe Cost-Optimized ist seit Langem ausverkauft. Diese Server sind Hardware, die Hetzner vor der RAM-Knappheit zu guten Preisen gekauft hat, und jeder Tarif der Reihe ist als „nicht verfügbar“ markiert. Der Server mit 2 vCPU und 4 GB, den Hetzner tatsächlich verkauft, der CPX22, kostet 19,49 € im Monat, vorher waren es 7,99 €. Dazu kommen ein Panel, Backup-Speicher und deine Stunden. Starter kostet 9,99 €, und all das ist erledigt.
Für wen Pethost ist
Pethost ist die beste Wahl für
- alle mit einer compose.yaml, die schon funktioniert, die sie online haben wollen, ohne einen Server zu patchen
- alle, die allein mehrere Side Projects betreiben: jedes ein Compose-Projekt, alle auf einer Rechnung über 9,99 €
- alle, die mit Claude Code, Codex oder Cursor bauen und wollen, dass der Agent das Projekt deployt und seine Logs liest
- junge Startups, die eine feste Rechnung wollen und eine Datei, die überall sonst läuft, wo Docker läuft
Schau dich woanders um, wenn
- deine Anwendung mehrere Regionen, Autoscaling oder eine Datenbank mit Replikaten braucht: Hier ist eine Maschine die Grenze
Fragen
Welches Managed Hosting deployt eine compose.yaml, ohne dass ich den Server verwalten muss?
Von den Managed-Hostern, deren Seiten wir 2026 gelesen haben, führen Pethost und Elestio eine Docker-Compose-Datei unverändert aus und pflegen die Maschine darunter. Pethost kostet 9,99 € im Monat, mit HTTPS, nächtlichen Backups und Request-Logs inklusive; die VM von Elestio mit 2 vCPU und 4 GB kostet 19,71 $.
Unterstützt Railway 2026 Docker Compose?
Railway importiert eine Compose-Datei: Jeder Service wird zu einem Railway-Service. Railway „führt docker-compose.yml-Dateien nicht direkt aus“: Für depends_on gibt es keine Entsprechung, und aus build: wird ein Deploy aus einem GitHub-Repository.
Unterstützt Sliplane Docker Compose?
Nicht als Datei zum Deployen: Die Dokumentation sagt „Docker-Compose-Dateien funktionieren noch nicht“. Ein Parser liest eine Teilmenge einer docker-compose.yml in Sliplane-Services ein, die du vor dem Deploy prüfst.
Kann Fly.io eine docker-compose.yml deployen?
Ja, als Container in einer einzigen Machine, mit [build.compose] in der fly.toml. Die volumes: der Datei werden ignoriert, nur ein Service darf ein build: haben, und nur ein Container nimmt eingehende Requests an.
Ist gcloud run compose up bei Cloud Run bereit für Produktion?
Der Befehl ist im Haupt-Track von gcloud, und die Seite von Google trägt keinen Preview-Hinweis. Google nennt ihn „ideal für die Entwicklung“ und schreibt, er sei „kein Ersatz für eine umfassende Infrastructure-as-Code-Strategie für Produktionsumgebungen“.
Unterstützen Render, Northflank oder DigitalOcean App Platform Docker Compose?
Nein. Render liest einen Blueprint render.yaml und DigitalOcean App Platform eine App Spec, und die Dokumentation von Northflank hat keine Seite zu Compose, nur Templates. Jeder Service wird neu deklariert.
Aus der eigenen Dokumentation und Preisseite jedes Anbieters gelesen. Die Preise stehen so da, wie jeder Anbieter sie nennt, in seiner Währung; unsere verstehen sich zzgl. MwSt.
- Railway: Docker Compose
- Railway: Backups
- Railway: Preise
- Sliplane: einen Service deployen
- Sliplane: Preise
- Fly.io: Machines mit mehreren Containern
- Fly.io: Preise
- Cloud Run: Compose
- Cloud Run: Preise
- Azure: az containerapp compose
- Render: Blueprints
- Render: „Support für docker-compose“
- Northflank: Dokumentation
- DigitalOcean App Platform: Limits
- Zeabur: Dockerfile
- Elestio: eigenes docker-compose
- Elestio: Preise
- Hostim.dev: Fragen
- Hostim.dev: Preise
- Coolify: Docker Compose
- Coolify Cloud: Preise
- Dokploy: Docker Compose
- Hetzner Cloud: Cost-Optimized-Tarife
- Hetzner: Preisanpassung
Bring deine Projekte noch heute online
Deploy Apps, Bots und Datenbanken aus deinem Agenten, von GitHub oder im Browser, so viele, wie hineinpassen, zu einem festen Preis. Nichts nach Verbrauch, nichts obendrauf.