Skip to content

infra · docker swarm, dokploy, github actions, cloudflare

DevOps-Freelancer für Docker Swarm und Dokploy, mit einer Vorschau für jeden Branch.

Für ein SaaS-Unternehmen habe ich das komplette Hosting aufgesetzt: einen Docker-Swarm-Cluster aus einem Manager und mehreren Workern, gesteuert über Dokploy. Ein Push auf master geht von selbst live, jeder Feature-Branch bekommt eine Vorschau unter eigener Subdomain, und Cloudflare steht davor. Ihr Hosting richte ich genauso ein, oder ich übernehme Ihr bestehendes.

Plattform
Docker Swarm, Dokploy, Traefik
CI/CD
GitHub Actions, GitHub Container Registry
DNS & CDN
Cloudflare
Einsatz
Als Projekt, im Team oder als Beratung
Arbeitszeit
Mo–Fr 04:00–18:00 Buenos Aires 09:00–23:00 Berlin 03:00–17:00 New York
Verfügbar ab
Q4 '26

Was ich aufsetze

  • Ein Cluster statt eines einzelnen Servers: Docker Swarm mit einem Manager und Workern. Die Apps verteilen sich auf mehrere Maschinen, und mehr Kapazität ist ein Worker mehr.
  • Dokploy als Schaltzentrale: Apps, Datenbanken, Domains und Zertifikate an einem Ort, mit Deploys und Logs im Browser statt über SSH.
  • Deploys ohne Handarbeit: Ein Push auf master baut eine neue Version und bringt sie live.
  • Eine Vorschau für jeden Branch: Jeder Feature-Branch läuft unter einer eigenen Subdomain, damit sich ein Feature testen lässt, bevor es gemergt wird.
  • Pipelines in GitHub Actions: Tests, Docker-Images und Releases.
  • Cloudflare davor: DNS, Caching, Weiterleitungen und Firewall-Regeln.

Im Einsatz: die Plattform eines SaaS-Unternehmens

Für ein SaaS-Unternehmen habe ich die komplette Plattform aufgesetzt: einen Docker-Swarm-Cluster aus einem Manager und mehreren Workern, gesteuert über Dokploy, mit Cloudflare davor. Die meisten Repositories sind als Dokploy-Anwendungen mit GitHub verbunden. Ein Push auf master deployt eine neue Version, und jeder Feature-Branch startet ein Preview-Deployment unter eigener Subdomain.

Die Backend-Services teilen sich ihre Pipelines über ein gemeinsames Workflow-Repository: CI und Releases mit release-please. Ein Template für neue Services bringt beides schon fertig verdrahtet mit.

Die Referenz: diese Website

Auch asisto.io läuft auf Dokploy: nginx liefert die fertigen Dateien aus, Traefik steht davor. Die Traefik-Regeln liegen im Repository direkt neben dem Code: ein Jahr Cache für Dateien mit einem Hash im Namen, kein Cache für HTML, damit ein Deploy sofort sichtbar ist, dazu HSTS und ein paar Sicherheits-Header, die nichts kosten. www und ein fehlender Schrägstrich am Ende werden in einem Schritt weitergeleitet, und eine fehlende Seite bekommt die 404 in der Sprache ihrer URL.

DevOps neben dem Rest des Stacks

Für mich gehört die Pipeline zum Code, deshalb setze ich sie gleich mit auf. Die NestJS-Backends und Astro-Websites, die ich baue, gehen als Docker-Images raus, und die Pipeline kommt mit. Sie haben eine Person, die den Code und die Server kennt, und ein fehlgeschlagener Deploy wandert nicht zwischen zwei Teams hin und her.

So können wir zusammenarbeiten

  • App-Entwicklung: Hosting und Pipelines als Projekt oder als Teil eines Produkts, das ich baue, mit schriftlichem Umfang, einer Demo pro Woche, und die Konfiguration gehört Ihnen.
  • Team-Verstärkung: Ich arbeite in Ihrem Team mit und kümmere mich neben der Produktarbeit um die Plattform, Teilzeit oder Vollzeit, ab drei Monaten.
  • Beratung: ein Review Ihres bestehenden Hostings und Ihrer Deploys oder ein Plan für den Umzug von einem Server auf einen Cluster, nach Stunden oder als monatlicher Retainer.

Häufige Fragen

Warum Docker Swarm und nicht Kubernetes?

Swarm ist Teil von Docker: Ein paar Server schließen sich zu einem Cluster zusammen, und eine App wird in fast derselben Datei beschrieben wie in der lokalen Entwicklung. Es gibt keine eigene Control Plane, die betrieben und aktualisiert werden muss. Kubernetes lohnt sich, wenn viele Teams viele Services deployen und sich jemand in Vollzeit um den Cluster kümmert. Für ein Produkt auf einer Handvoll Server erledigt Swarm die Arbeit mit deutlich weniger Wartung.

Was ist Dokploy?

Eine Open-Source-Plattform, die Sie auf Ihren eigenen Servern installieren, ähnlich wie Heroku oder Vercel. Sie verbindet sich mit Ihren GitHub-Repositories, baut und deployt die Apps, betreibt Datenbanken und kümmert sich über Traefik um Domains und TLS-Zertifikate. Sie läuft auf Docker Swarm, mehr Kapazität ist also ein Worker mehr.

Wie funktionieren Preview-Deployments?

Sobald jemand einen Feature-Branch pusht, baut Dokploy ihn und startet ihn unter einer eigenen Subdomain. Product Owner und Tester klicken sich durch das Feature, bevor es gemergt wird, und niemand muss auf einen gemeinsamen Staging-Server warten.

Warum Cloudflare davor?

Cloudflare beantwortet DNS-Anfragen, liefert statische Dateien aus einem Cache nahe am Besucher aus und filtert Angriffe, bevor sie Ihre Server erreichen, deren IP-Adressen dahinter verborgen bleiben. Weiterleitungen und Cache-Regeln liegen ebenfalls dort, statt in jeder App.

Können Sie unser bestehendes Setup übernehmen?

Ja. Ich beginne mit einem Review: Was läuft wo, wie funktioniert ein Deploy heute, was passiert, wenn ein Server ausfällt, und wo liegen die Backups? Das bekommen Sie schriftlich, mit dem, was zuerst behoben werden sollte.

Was kostet das?

Preise auf Anfrage: Festpreis oder nach Aufwand für Projekte, nach Stunden oder als monatlicher Retainer für Beratung. Ein schriftliches Angebot bekommen Sie innerhalb von 48 Stunden.

Erzählen Sie mir,
was Sie brauchen.

Termin buchen

Oder per E-Mail hello@asisto.io

Lieber schreiben als telefonieren? Kein Problem: Alles geht auch schriftlich, von der ersten Nachricht bis zur Übergabe.

So geht es weiter

  1. Diese Woche
    Kennenlernen per Call oder schriftlich
  2. Innerhalb von 48 Stunden
    Schriftliches Angebot
  3. Meist innerhalb von 2 Wochen
    Projektstart
  4. Zum Schluss
    Übergabe und 30 Tage Support