Blax Software Blax Software.
Operations · Docker

Docker als Standard, Traefik obendrauf

Wir containerisieren jedes Projekt, das wir ausliefern, und wir labeln jeden Container so, dass Traefik ihn von selbst routet. Das Ergebnis ist eine Deploy-Geschichte so langweilig, dass sie nie in den Schlagzeilen landet, und genau das wollen Kunden von Infrastruktur.

Vom Klonen bis lauffähigZehn Minuten
Reverse-Proxy in ProduktionTraefik-Labels
Vendor-Lock-inKeiner

Container sind die Standard-Einheit

Ein Repository, das auf einem neuen Laptop ausgecheckt wird, sollte zehn Minuten später laufen. Diese Zahl ist für uns nicht verhandelbar, und genau das garantiert Docker. Jedes Projekt, das wir ausliefern, hat ein Dockerfile, ein docker-compose für die lokale Entwicklung, und einen schlanken Produktions-Compose-Stack, der sich nur in Umgebungsvariablen unterscheidet. Dasselbe Image läuft auf dem Laptop einer Junior-Entwicklerin und auf dem Rack in unserem Hosting-Raum. "Auf meinem Rechner läufts" ist eine Bug-Klasse, die wir vor zehn Jahren aus dem Code entfernt haben.

Traefik erledigt den Rest

Reverse-Proxys hießen früher: nginx-Configs zwischen Servern hin- und herkopieren, Edge-Cases um drei Uhr nachts entdecken, und ein brüchiger Übergang zwischen Dev und Ops. Wir wählen Traefik gezielt, weil er seine Routing-Konfiguration aus den Container-Labels liest, nicht aus einer separaten Datei. Service zum Compose-Stack hinzufügen, eine Handvoll traefik.*-Labels setzen, pushen, und der neue Hostname ist innerhalb von dreißig Sekunden mit frischem Let's-Encrypt-Zertifikat live. Es gibt kein nginx-Generator-Script und keinen separaten Deploy-Schritt für den Proxy. Die Route IST das Label. Auf einem Entwickler-Laptop läuft derselbe Proxy vor *.localhost.at-Subdomains, und mkcert händigt ihm ein vertrauenswürdiges Zertifikat aus, sodass eine lokale Dev-URL bis zum TLS-Handshake exakt wie eine Produktions-URL aussieht.

Was das für Ihre Rechnung bedeutet

Die zwei Minuten, die ein Projekt auf einer neuen Entwicklermaschine zum Starten braucht, summieren sich über ein Jahr kleiner Fixes. Vorhersagbare Deployments heißen, wir polstern keine Schätzungen mit "einen Nachmittag, um die Staging-Umgebung zu debuggen". Vorhersagbares Rollback heißt, wir haben keine Angst, freitags um 16 Uhr einen Fix zu pushen. Nichts davon ist exotisch; alles davon ist günstiger für Sie, und wir geben das weiter, statt so zu tun, als wäre die Arbeit aufwendiger.

Sie bleiben portabel

Container-Manifeste und Traefik-Labels sind Standards, keine Blax-spezifische Konfiguration. Dasselbe Compose-File, das mit Ihrem Projekt geliefert wird, läuft auf jedem Docker-Host, der mit Traefik sprechen kann, was unser Hosting-Setup zu einer Bequemlichkeit macht, nicht zu einem Lock-in. Wenn Sie irgendwann auf einen eigenen Cluster, einen eigenen Provider oder eine andere Agentur wechseln, geht das Deployment mit. Die Schlüssel gehören in beiden Fällen Ihnen (siehe unsere FAQ zum Hosting).

Linux drunter, natürlich

All das setzt einen Linux-Host voraus, und genau das laufen wir von der Workstation bis zum Rack. Die Überzeugungen stapeln sich: Linux überall ist das, was Docker zuverlässig macht, und Docker ist das, was den Rest des Builds günstiger macht.
Die Route IST das Label. Es gibt keine separate Proxy-Konfiguration zum Hand-Editieren; was nicht im Compose-File steht, existiert nicht.
Warum wir Traefik gewählt haben

Neugierig, wie das in der Praxis aussieht?

Diese Essays sind das Warum. Das Wie zeigt sich in den Projekten, die wir ausliefern. Schreiben Sie uns, dann sprechen wir über Ihren konkreten Fall.