c't 4/2018
S. 88
Praxis
Let's Encrypt: Docker
Aufmacherbild
Bild: Albert Hulm

Frachtpapierfabrik

Docker-Container automatisch mit Zertifikaten versorgen

Selbst komplexe Anwendungen gelangen im Handumdrehen ins Internet, wenn Docker mithelfen darf. Let’s-Encrypt-Zertifikate fallen dabei fast vollautomatisch ab und ergänzen nicht nur Web-, sondern auch Mail-Server.

Viele komplexe Anwendungen, etwa der GitHub-Klon GitLab, die aus vielen einzelnen Teilen bestehen, gibt es als Docker-Images. Um solche Dienste ungefährdet produktiv nutzen zu können, sind ordentliche Zertifikate wichtig. Die kann man in solche Anwendungen reinfummeln oder die Aufgabe an zwei weitere Docker-Images delegieren, die sich darauf spezialisiert haben.

Das Docker-Image jwilder/nginx-proxy sammelt Zugriffe auf Web-Anwendungen an den einschlägigen Ports 80 und 443 als Reverse-Proxy ein und leitet sie an den passenden Container weiter. Welcher Container das ist, macht es an Namen fest. Ein Zertifikat zum jeweiligen Namen beschafft das Docker-Image JrCs/docker-letsencrypt-nginx-proxy-companion und stellt es dem Reverse-Proxy bereit. An den Containern mit der Web-Anwendung ist dafür kein Handschlag nötig.