Docker

Aus tisentoWiki
Zur Navigation springen Zur Suche springen


Zugriff

Der Docker-Server ist unter der 172.22.0.224 erreichbar.

Der neue Docker-Server wird unter 172.22.0.223 erreichbar sein.

Der Port, Nutzername und auch das Passwort sind im Passbolt gespeichert.

Zugriff Dienste

Nachfolgend eine Liste der Dienste die auf dem Docker laufen

Sonstige Software (nicht vollständig, muss überarbeitet werden!)

  • UFW (Firewall)
  • cron (Wiederkehrende Aufgaben, bspw. Backups)
  • ncdu (Speicherbelegung)
  • nmon (Monitoring)

Beschreibung der Docker-Dienste

Die meisten Dienste sind mit ihren Daten und Definitionen unter /var/html/dienst.tisento.com erreichbar.

Dabei sind in dem Ordner /var/html/dienst.tisento.com/.docker die Definitionen der Docker-Container.

In dem Ordner /var/html/dienst.tisento.com/backups sind die jeweiligen Backups der Daten.

Cockpit-PROD (cockpit.tisento.com)

Cockpit-PROD besteht aus:

  • Apache Dienste
  • MariaDB
  • PHPMyAdmin
  • LXConnector (Direktverbindung zu Lexware F2)
  • Backup

Die Daten befinden sich unter /var/html/cockpit.tisento.com.

Backup

Der Backup-Service erstellt jeden Tag ein Backup der MariaDB und des HTML-Verzeichnisses vom Apache-Dienst.

Diese Backups werden auf dem Server unter "/var/www/cockpit.tisento.com/backups gespeichert. Das tägliche Backup wird nach 30 Tagen gelöscht, die monatlichen nach einem Jahr und die jährlichen Backups nie.

EVTL. NOCH MONITOR HINZUFÜGEN DER BACKUP TÄGLICH PRÜFT!

Wiederherstellung

TODO

Cockpit-TEST (cockpit-test.tisento.com)

Cockpit-PROD besteht aus:

  • Apache Dienste
  • MariaDB
  • PHPMyAdmin
  • LXConnector (Direktverbindung zu Lexware F902)
  • Backup

Die Daten befinden sich unter /var/html/cockpit-test.tisento.com.

Backup

Der Backup-Service erstellt jeden Tag ein Backup der MariaDB und des HTML-Verzeichnisses vom Apache-Dienst.

Diese Backups werden auf dem Server unter "/var/www/cockpit-test.tisento.com/backups gespeichert.

Wiederherstellung

Nicht notwendig

Cockpit-DEV (cockpit-dev.tisento.com)

Cockpit-PROD besteht aus:

  • Apache Dienste
  • MariaDB
  • PHPMyAdmin
  • LXConnector (Direktverbindung zu Lexware F902)
  • Backup

Die Daten befinden sich unter /var/html/cockpit-dev.tisento.com.

Backup

Der Backup-Service erstellt jeden Tag ein Backup der MariaDB und des HTML-Verzeichnisses vom Apache-Dienst.

Diese Backups werden auf dem Server unter "/var/www/cockpit-dev.tisento.com/backups gespeichert.

Wiederherstellung

Nicht notwendig

UpTime Kuma / Monitor (monitor.tisento.com)

Dieses Tool ist für die Überwachung der diversen Docker-Container, als auch für diverse Systeme da (z.B. HEALTH, also CPU, RAM, HDD von diversen Servern).

Die Daten befinden sich unter /var/html/monitor.tisento.com.

Backup

TODO

Wiederherstellung

TODO

Portainer (portainer.tisento.com)

Dieses Tool ist für die Verwaltung der verschiedenen Docker-Container notwendig.

Die Daten befinden sich unter /var/html/portainer.tisento.com.

Backup

TODO

Wiederherstellung

TODO

FTP

Dieses Tool ist für die FTP-Verbindung zu den jeweiligen HTML-Verzeichnissen von cockpit.tisento.com, cockpit-test.tisento.com und cockpit-dev.tisento.com zuständig.

Die Daten befinden sich unter /var/html/ftp.tisento.com.

Backup

TODO

Wiederherstellung

TODO

Ticketsystem / Otobo (service.tisento.com)

Dieses Tool ist für die Erstellung und Verwaltung der Tickets zuständig.

Die Daten befinden sich unter /var/html/TODO.tisento.com.

Backup

TODO

Wiederherstellung

TODO

NGINX (noch nicht als Docker-Container)

nginx ist ein Reverse-Proxy, damit die verschiedenen Domains den richtigen Weg zu den Services finden.

Die Daten befinden sich unter /var/html/TODO.tisento.com.

Backup

TODO

Wiederherstellung

TODO

UFW (Firewall)

Backup

TODO

Wiederherstellung

TODO

Git (gitea) (gitea.tisento.com)

Die Daten befinden sich unter /var/html/TODO.tisento.com.

Backup

TODO

Wiederherstellung

TODO

Backups

Jeder Service hat ein eigenes Backup-System.

Diese Backups werden gemeinsam per FTP auf den Server XY übertragen.

Dort läuft ein kleiner PHP-Cronjob, der diese Backups in ein anderes Verzeichnis überträgt.

Diese Dateien werden für eine Wiederherstellung benötigt!

Für den Start des vollständigen Backups wird ein neuer Server benötigt, dort müssen folgende Schritte in der Reihenfolge ausgeführt werden.

Installation von Docker

Erstellung des nginx Docker-Service

Erstellung des Portainer Docker-Service

Erstellung des gitea-Docker-Service mit Portainer.

Wiederherstellung von gitea mithilfe der obigen Erklärung.

Wiederherstellung der restlichen Docker-Services mithilfe der Docker-Compose-Dateien in gitea. Alternativ sind die Docker-Compose-Dateien auch in den Backup gespeichert!

Wiederherstellung der einzelnen Daten der Services mithilfe der obigen Erklärungen.

Neuen Docker-Dienst anlegen

Hier wird davon ausgegangen, dass es sich um einen Dockerdienst handelt, der auf einem Port wie 80 oder 443 angesprochen werden soll. Wir gehen davon aus, dass das Portmapping "127.0.0.1:10443:443" ist, also der Container den Port 10443 auf das lokale Interface öffnet und mit dem Container-Port 10443 mappt. Weiter gehen wir davon aus, dass der Service über die Subdomain "sub.tisento.com" über HTTP und HTTPS erreichbar sein soll. HTTP wird auf HTTPS weitergeleitet.

  1. Erstellung der Sub-Domain sub.tisento.com
    1. Torsten diese Sub-Domain dem Server zuweisen lassen.
    2. Für das SSL-Zertifikat muss die Domain öffentlich erreichbar sein!
  2. Erstellung der Konfiguration im nginx Service
    1. Erstellung einer Datei sub.tisento.com.conf in dem Pfad /var/www/nginx.tisento.com/nginx/...
    2. Hinzufügen von dem Inhalt:

      adasdsa

    3. Prüfung ob die Konfiguration korrekt ist (optional)
    4. nginx neu laden
    5. Hinzufügen eines Zertifikates mit dem Befehl:
      1. asdasd
    6. Hinzufügen der SSL Konfuguration zur Datei (sub.tisento.com.conf)
    7. Prüfen ob die Konfiguration korrekt ist (optional)
    8. nginx neuladen
  3. Prüfen der Verbindung