Webserver Docker Https

Chriscb83

Well-known member
Mitglied seit
22 März 2007
Beiträge
790
Danke
12
#1
Hi

mein Verein hat eine Server bei netcup und wir lassen darauf ubuntu und docker laufen. Darin läuft discourse.

Jetzt ist gewünscht das jeder Seitenaufruf mit "Https " funktionieren soll und nicht mit "http "

Wie realisiere ich das ?
 

NJay

Moderator
Mitarbeiter
Team
Mitglied seit
19 März 2012
Beiträge
5.434
Danke
315
#3
Hi

mein Verein hat eine Server bei netcup und wir lassen darauf ubuntu und docker laufen. Darin läuft discourse.

Jetzt ist gewünscht das jeder Seitenaufruf mit "Https " funktionieren soll und nicht mit "http "

Wie realisiere ich das ?

Wenn du so wenig Ahnung davon hast, frag lieber jemanden, der welche hat. ;)

Sonst geht am Ende noch was kaputt.
 

kingspride

Moderator
Mitarbeiter
Team
Mitglied seit
30 Juni 2010
Beiträge
17.017
Danke
1.063
#6
naja. da steht allerhand, aber eins der wichtigsten Dinge, nämlich: Wo bekomme ich ein gültiges Zertifikat her, fehlt einfach.
letsencrypt wäre eine passende Anlaufstelle.
da gibts einen "certbot" der das Zertifizieren deiner Adresse für dich macht.
die können in ihrem Script auch gleich automatisiert eine Umleitung auf https einstellen, allerdings funktioniert das erstmal nur mit normalen Apache Websiten.

Bei Docker basierten Softwares muss man sich dann wahrscheinlich einen reverse proxy einrichten, oder das Zertifikat irgendwie in den Container friemeln, ohne dass es beim nächsten reboot wieder futsch ist...

ich sag ja, trivial ist das halt einfach nicht mehr, eine standardlösung X für Problem Y wird es nicht geben.
---
wir können das trotzdem hier durchklamüsern, aber da brauchen wir auf jedenfall tonnenweise infos, wie und was da auf deinem Server läuft und eingerichtet ist.

ich muss aber zugeben, dass ich kein Fan von Docker bin und daher auch nur eingeschränkt Erfahrung damit habe.
Am Ende des Tages habe ich immer den Eindruck, dass eine "normale" installation direkt auf dem System genauso viel Arbeit beansprucht und DA weiß ich was ich brauche, was ich habe und was ich machen muss.
daher installiere ich zu 99% solche Software nativ im System.

Wenn ich Sandboxen und Container will, mach ich das mit vollen VMs. Lässt sich irgenwie leichter handhaben und frisst nur geringfügig mehr Ressourcen.

my 2cts
 

NJay

Moderator
Mitarbeiter
Team
Mitglied seit
19 März 2012
Beiträge
5.434
Danke
315
#8
ich muss aber zugeben, dass ich kein Fan von Docker bin und daher auch nur eingeschränkt Erfahrung damit habe.
Am Ende des Tages habe ich immer den Eindruck, dass eine "normale" installation direkt auf dem System genauso viel Arbeit beansprucht und DA weiß ich was ich brauche, was ich habe und was ich machen muss.
daher installiere ich zu 99% solche Software nativ im System.

Wenn ich Sandboxen und Container will, mach ich das mit vollen VMs. Lässt sich irgenwie leichter handhaben und frisst nur geringfügig mehr Ressourcen.
Also ich will jetzt hier keine komplette Offtopic-Diskussion anzetteln, aber hast du dich wirklich schon ordentlich mit Docker beschaeftigt? Als ich von Uni (und freunden) fuer diverse Projekte gezwungen wurde Docker zu benutzen fand ich das auch erstmal doof, weil gefuehlt unnoetig kompliziert.

Mittlerweile wuesste ich nicht mehr, wie ich ohne Docker entwickeln, oder einen Server betreiben soll. Es ist letztendlich super praktisch, laeuft auch auf einem PI (halbwegs) performant und muellt einem nicht das System zu. (Bzw schon, aber das kann man mit einem Befehl wieder bereinigen)
 

kingspride

Moderator
Mitarbeiter
Team
Mitglied seit
30 Juni 2010
Beiträge
17.017
Danke
1.063
#9
Vielleicht habe ich inzwischen schon zu viele der altmodischen Angewohnheiten meiner Kollegen übernommen^^

Das letzte Mal hab ich Docker vor zwei Jahren mal angeschaut, glaube ich. Weiß aber nicht mehr, zu welchem Beritt...

Der Kram, mit dem ich mal was entwickle, ist eh nicht Dockerkompatibel, 80er Jahre Software halt.

Zugemüllte Systeme hab ich gefühlt auch nicht, aber das empfindet jeder vermutlich anders^^
 

NJay

Moderator
Mitarbeiter
Team
Mitglied seit
19 März 2012
Beiträge
5.434
Danke
315
#10
Dann würde ich es mir definitiv nochmal anschauen. Gerade für kleine oder verteilte Software ist es genial.

Bei mir auf der Arbeit nutzen wir z.B. eine microservices Architektur. Jeder Service wird als Docker-Container gestartet. Wo du den jetzt startest, also z.B. auf Server 1 oder Server n ist egal. Du brauchst nur das Docker-Compose file, einmal docker-compose up und ca. eine Minute Gedult und jeder beliebige Service ist komplett installiert und läuft.
 

kingspride

Moderator
Mitarbeiter
Team
Mitglied seit
30 Juni 2010
Beiträge
17.017
Danke
1.063
#11
...auf welchem ESX ich meine VM starte, ist auch egal ^^
aber du hast schon Recht, vermutlich könnte man bei Gelegenheit nochmal genauer schauen ob wir einen Usecase dafür haben...
 

NJay

Moderator
Mitarbeiter
Team
Mitglied seit
19 März 2012
Beiträge
5.434
Danke
315
#12
...auf welchem ESX ich meine VM starte, ist auch egal ^^
aber du hast schon Recht, vermutlich könnte man bei Gelegenheit nochmal genauer schauen ob wir einen Usecase dafür haben...
Aber eine komplette Umgebung in einem ca. 100 Zeilen langen File zu definieren und dann beliebig irgendwo starten zu koennen kannst du mit ner VM nicht. Da musst du dann schon eine grosse VM rumkopieren.
 

Amari

Administrator
Mitarbeiter
Team
Mitglied seit
16 April 2006
Beiträge
6.562
Danke
418
#13
Aber eine komplette Umgebung in einem ca. 100 Zeilen langen File zu definieren und dann beliebig irgendwo starten zu koennen kannst du mit ner VM nicht. Da musst du dann schon eine grosse VM rumkopieren.
Auch dafür gibt es entsprechende Lösungen ;)

Für die Entwicklung geht heute kaum noch etwas ohne Docker. Aber im Produktionsbetrieb hatte ich schon einige Fehler beim deployment die du ohne Docker nicht hättest. Es ist aber auch immer die Frage an was für einem System man arbeitet.

An den TE. Folge am besten den Link von @Hersfeld.
Alternativ und vermutlich auch etwas flexibler wäre nginx als reverse proxy mit ssl der einfach alles an den Docker Container weiter leitet. So würde ich es eigentlich in den meisten Fällen machen um Docker nicht direkt an einem offenen Port zu haben.
 

kingspride

Moderator
Mitarbeiter
Team
Mitglied seit
30 Juni 2010
Beiträge
17.017
Danke
1.063
#14
Alternativ und vermutlich auch etwas flexibler wäre nginx als reverse proxy mit ssl der einfach alles an den Docker Container weiter leitet
so hätte ich das jetzt auch gelöst. Das bringt vermutlich den Vorteil, dass man den Certbot ganz normal ohne sonderoptionen verwenden kann :)
 
Oben