Excerpt |
---|
BegriffserklärungDockerDocker ist ein Open-Source Projekt, das dazu dient Software in einer isolierten Umgebung - einem sogenannten Container - auszuführen. Das heißt, Software die innerhalb von einem Container ausgeführt wird teilt sich die Basisfunktionalität des eigentlichen Betriebssystemes, ist aber ansonsten was das Dateisystem und den Arbeitsspeicher angeht von dem restlichen Betriebssystem und anderen Containern isoliert. Das bietet den Vorteil, dass Software die innerhalb eines Docker-Containers ausgeführt wird, immer in einer fest definierten Umgebung mit fest definierten und installierten Abhängigkeiten ausgeführt wird. Der Docker-Host, der notwendig ist um Docker-Container auszuführen, kann auf jedem beliebigen Linux, Windows oder Mac OSX Server installiert werden. Da jedoch immer eine Linux “Zwischenschicht” notwendig ist, ist ein Linux Server zu empfehlen. Weitere Informationen zur Installation von Docker find Sie hier: https://docs.docker.com/engine/install/ Docker ContainerDocker bietet eine Vielzahl von vordefinierten Containern für bestimmte Anwendungszwecke. Diese Container werden oft von den Entwicklern einer Software selbst gepflegt. Beispielsweise gibt es einen offizielles Container-Abbild von Postgres, in dem die gleichnamige Datenbank ausgeführt wird. Um einen Docker Container zu konfigurieren exponiert dieser ein vordefiniertes Set von Einstellungen, die von außen an den Container weitergegeben werden können. Docker ComposeMit der Beschreibungssprache “Docker Compose” kann konfiguriert werden, wie eine Anwendung, die aus mehreren Docker Containern besteht, aufgebaut ist. Hier ist beispielsweise definiert, welche Container inkl. ihrer Konfiguration für die gesamte Anwendung ausgeführt werden müssen, wie die Container miteinander in einem virtuellen Netzwerk kommunizieren, welche Dateien vom Host-System im Container zur Verfügung stehen sollen und welche Passwörter verwendet werden sollen. InstallationsbundleUnser Installationsbundle für den Kommentierungsserver besteht aus mehreren Dateien: .envIn dieser Datei werden Umgebungsvariablen festgelegt, die definieren unter welchem SSL-Port die Anwendung laufen soll und wie die Dateien heißen, in denen das (von Ihnen für Ihre Domain bereitgestellte) SSL Zertifikat und der SSL Key liegen. *_password.txtIn zwei Dateien, die mit “_password.txt” enden, wird festgelegt, welche Passwörter (initial) für die Datenbank und den globalen Administrator-User verwendet werden sollen. config.propertiesHier werden Einstellungen für unseren Kommentierungsserver festgelegt. Aktuell findet dort die Konfiguration des SMTP Mail-Servers statt, der dazu verwendet wird Benachrichtigungsemails zu versenden, wenn ein Benutzer in einem Kommentar erwähnt wurde. init-*-db.sqlDie Initialisierung der Postgres Datenbanken mit einer neuen Datenbank ist hier definiert. Hier ist vom Benutzer nichts anzupassen. nginx.confIn der Konfigurationsdatei befindet sich die Definition, wie der NGINX Reverse Proxy die Anfragen gegen das Kommentierungsbackend an die einzelnen Docker Container weiterleiten soll. Hier ist in der Regel vom Benutzer nichts anzupassen. docker-compose.yamlDie Definition welche Container für das Kommentierungsbackend erstellt werden müssen, welche Dateien vom Host-System verwendet werden dürfen und wie das interne Netzwerk aufgebaut ist muss in der Regel nicht angepasst werden. commenting.warIn dieser Datei liegt die Logik für das Kommentierungsbackend, sie wird automatisch in dem Tomcat-Container in Docker installiert. Installationsvorgang
Datenbankstruktur Kommentarecomment
context
Durch die Architektur unserer comments-Software mit einem zentralen Single-Sign-On ist es notwendig dass Cookies gesetzt werden. Diese werden vom Chrome-Browser, ganz im Gegensatz zu Firefox, als sogenannte "Third-Party-Cookies" eingestuft. Mit einer Änderung im Jahr 2024 hat Chrome begonnen diese zu blockieren. Damit unsere comments weiterhin genutzt werden können ist es notwendig eine Ausnahme hinzuzufügen. Diese kann in den Chrome-Einstellungen unter "Datenschutz und Sicherheit" / "Drittanbieter-Cookies" / "Benutzerdefinierte Einstellungen" / "Darf Drittanbieter-Cookies verwenden" definiert werden. Hier fügen Sie bitte die URL zu dem von Ihnen gehosteten comments-Backend ein. |
Page Comparison
Manage space
Manage content
Integrations