Willkommen zu L0pb.me, einem kleinen, aber mächtigen Service, den ich speziell für Entwickler entwickelt habe, die ihre lokalen Projekte unkompliziert testen möchten. Ähnlich wie traefik.me oder nip.io zeigt jede Subdomain direkt auf die IP 127.0.0.1, also den localhost.
Die Idee zu L0pb.me entstand, als mich ein befreundeter Webentwickler ansprach. Er suchte nach einer weniger komplexen und umfassenden Lösung als DDEV, um mehrere lokale Entwicklungen (wie TYPO3 oder WordPress) gleichzeitig betreiben zu können – und das am besten mit einem funktionierenden SSL-Zertifikat. Als Antwort darauf habe ich ein Traefik-Image mit integrierter Konfiguration (psycho0verload/l0pb-traefik) erstellt und die entsprechende Dokumentation auf L0pb.me veröffentlicht.
Das Geheimnis der Subdomains
Das Besondere an L0pb.me sind die Subdomains. Jede Subdomain von l0pb.me zeigt auf den localhost. Das bedeutet, wenn du im Browser eine Subdomain wie zum Beispiel meinedomain.l0pb.me aufrufst, gibt der DNS-Server für diese Adresse die IP 127.0.0.1 zurück – die Adresse deines eigenen PCs.
Traefik 3.0 und SSL-Zertifikate
Der nächste Schritt ist einfach: Stelle auf deinem eigenen PC (funktioniert auf Windows, Mac und Linux) Traefik 3.0 mit der vorgefertigten Konfiguration bereit. Vorraussetzung ist Docker Desktop.
services:
traefik:
container_name: l0pb-traefik
hostname: l0pb-traefik
image: psycho0verload/l0pb-traefik
labels:
traefik.docker.network: proxy
traefik.enable: "true"
traefik.http.routers.traefik.entrypoints: websecure
traefik.http.routers.traefik.rule: Host(`traefik.l0pb.me`) || Host(`traefik.l0pb.dev`)
traefik.http.routers.traefik.service: api@internal
traefik.http.routers.traefik.tls: "true"
traefik.http.services.traefik.loadbalancer.sticky.cookie.httpOnly: "true"
traefik.http.services.traefik.loadbalancer.sticky.cookie.secure: "true"
networks:
proxy:
ipv4_address: 172.30.255.254
ports:
- mode: host
target: 80
published: "80"
protocol: tcp
- mode: host
target: 443
published: "443"
protocol: tcp
restart: unless-stopped
security_opt:
- no-new-privileges:true
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./log/traefik/:/var/log/traefik/
mailhog:
image: mailhog/mailhog
hostname: l0pb-mailhog
container_name: l0pb-mailhog
restart: unless-stopped
labels:
traefik.docker.network: proxy
traefik.enable: "true"
traefik.http.routers.mailhog.entrypoints: websecure
traefik.http.routers.mailhog.rule: Host(`mailhog.l0pb.me`) || Host(`mailhog.l0pb.dev`)
traefik.http.routers.mailhog.tls: "true"
traefik.http.routers.mailhog.service: mailhog
traefik.http.services.mailhog.loadbalancer.server.port: "8025"
networks:
proxy:
networks:
proxy:
name: proxy
driver: bridge
ipam:
config:
- subnet: 172.30.0.0/16
attachable: true
In dieser Konfiguration ist auch das SSL-Zertifikat für *.l0pb.me enthalten. Anschließend musst du nur noch deinen Service auf der lokalen Maschine mit den richtigen Labels versehen und schon funktioniert das kleine Stück Magie mit einem echten SSL-Zertifikat.
L0pb.me macht das Testen und Entwickeln lokaler Projekte einfacher. Probiere es aus und erlebe, wie mühelos es sein kann, deine Projekte lokal zu hosten und dabei echte SSL-Zertifikate zu nutzen.
Viel Spaß beim Entwickeln!

l0pb.me
Zertifikat abgelaufen, Bitte erneuern
Ausgestellt am Freitag, 4. Oktober 2024 um 21:20:31
Gültig bis Donnerstag, 2. Januar 2025 um 20:20:30
Hallo Jonathan, ich habe mal versucht das umzusetzen. Da ich bei deiner Grundeinstellung also Port 80 diese Meldung bekommen habe.
Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:80 -> 0.0.0.0:0: listen tcp 0.0.0.0:80: bind: An attempt was made to access a socket in a way forbidden by its access permissions.
Habe ich die Ports 80 und 443 auf 81 und 444 geändert. Ich bekommen immer die Meldung.
“Verbindung fehlgeschlagen”
Wie bekomme ich das gelöst. Vielen Dank und Gruß Andreas