TCMSOFT – Inhalt

Docker installieren

TCMSOFT läuft auf der NAS bzw. dem Server in zwei Docker-Containern: tcmsoft (Anwendung, Datenbank, Drucksystem) und tcmsoft-updater (der Update-Dienst, der TCMSOFT anlegt und jede Nacht aktualisiert). Bevor Sie TCMSOFT einrichten, muss Docker auf dem Gerät laufen. Diese Seite beschreibt, was TCMSOFT von Docker braucht, wie Sie Docker je Plattform bereitstellen und wie Sie prüfen, dass es läuft.

Danach geht es weiter mit TCMSOFT einrichten.

Was TCMSOFT von Docker braucht

Anforderung Warum
Docker mit der Kommandozeile docker auf dem Gerät, Zugang per SSH als Administrator (sudo -i) Eingerichtet wird mit wenigen Befehlen per SSH.
Der Docker-Socket liegt unter /var/run/docker.sock Der Update-Dienst steuert Docker über genau diesen Pfad. Er ist fest eingestellt und wird auch beim Selbst-Update des Dienstes weitergegeben.
Container dürfen im Host-Netz laufen (--network host) Nur so findet TCMSOFT die Drucker im Praxisnetz.
Ausgehender HTTPS-Zugang zu downloads.tcmsoft.de Von dort lädt der Update-Dienst TCMSOFT und alle Updates. Docker Hub oder eine andere Registry braucht TCMSOFT nicht: Die Images kommen als Dateien von downloads.tcmsoft.de, und der Update-Dienst spielt nur vom Hersteller signierte ein.
Prozessor x64 mit AVX oder ARM64 ab ARMv8.2 Die eingebaute Datenbank (MongoDB 8.3) läuft sonst nicht. Einzelheiten unter Voraussetzungen.

Unterstützt sind laut Anleitung von TCMSOFT:

QNAP ist nicht getestet (siehe unten). Docker Desktop unter Windows oder macOS nutzt TCMSOFT nur für eigene Proben; für den Praxisbetrieb ist es nicht vorgesehen.

Docker-Installationen, deren Socket nicht unter /var/run/docker.sock liegt (z. B. Rootless Docker), passen nicht zum Update-Dienst.

Vorher prüfen: Prozessor

Melden Sie sich per SSH an und wechseln Sie mit sudo -i zum Administrator. Dann:

uname -m

Bei x86_64 zusätzlich prüfen, ob der Prozessor AVX kann (so prüft es auch TCMSOFT beim Start):

grep -qw avx /proc/cpuinfo && echo "AVX vorhanden" || echo "kein AVX"

Erscheint „kein AVX“, ist das Gerät für TCMSOFT nicht geeignet. Das betrifft zum Beispiel NAS mit Celeron oder Pentium Silver der J- und N-Serie wie die Synology DS220+, DS224+ und DS920+. TCMSOFT würde dort beim Start im Protokoll melden: „Dieser Prozessor unterstützt kein AVX - MongoDB 8.3 läuft auf diesem Gerät nicht. …“ und sich beenden.

Ob ein ARM64-Prozessor (aarch64) die Anforderung ARMv8.2 erfüllt, beschreibt dieses Handbuch nicht. Sehen Sie beim Hersteller des Geräts nach oder fragen Sie beim TCMSOFT-Support nach.

Synology (Container Manager)

  1. Im DSM das Paket-Zentrum öffnen und Container Manager installieren. Das Paket gibt es ab DSM 7.2 und nur für Modelle, für die Synology es anbietet.
  2. SSH einschalten: Systemsteuerung › Terminal & SNMP, dort SSH-Dienst aktivieren.
  3. Per SSH mit einem Administratorkonto der NAS anmelden und sudo -i eingeben (fragt noch einmal nach dem Passwort dieses Kontos).
  4. Prüfen, dass Docker läuft (Abschnitt „Prüfen, dass Docker läuft“ unten).

Die Menüwege in Schritt 1 und 2 gehören zur Oberfläche von Synology (DSM 7.2) und sind von TCMSOFT nicht eigens geprüft. In anderen DSM-Versionen können sie abweichen; dann gilt die Hilfe der NAS.

Hinweise:

UGREEN

  1. Docker auf der NAS installieren (die Anleitung von TCMSOFT nennt es „UGREEN Docker“).
  2. SSH in den Einstellungen der NAS einschalten.
  3. Per SSH mit einem Administratorkonto anmelden und sudo -i eingeben.
  4. Prüfen, dass Docker läuft (Abschnitt „Prüfen, dass Docker läuft“ unten).

Die genauen Menüwege der UGREEN-Oberfläche sind in diesem Handbuch nicht beschrieben. Sehen Sie in der Hilfe der NAS nach.

QNAP (Container Station) – nicht getestet

TCMSOFT ist auf QNAP-Geräten nicht getestet, und die Anleitung von TCMSOFT nennt QNAP nicht. Fragen Sie vor dem Einsatz beim TCMSOFT-Support nach.

Offen ist insbesondere:

Wer ein QNAP-Gerät vorab prüfen will: Container Station aus dem App Center installieren, SSH einschalten, per SSH als Administrator anmelden und die Prüfungen auf dieser Seite ausführen. Nur wenn alle passen, kommt das Gerät überhaupt in Frage. Vor dem Einsatz in jedem Fall beim TCMSOFT-Support nachfragen.

Linux-Server und Mikroserver (Debian, Ubuntu)

Auf einem Linux-Server läuft TCMSOFT mit Docker Engine. Die bisherige Einrichtung der Mikroserver (ohne Docker) installiert Docker nicht mit. Läuft auf dem Server schon ein Docker (docker version zeigt einen Abschnitt „Server“), überspringen Sie die Installation und machen bei der Prüfung weiter.

Maßgeblich für die Installation ist die Anleitung von Docker: docs.docker.com, „Install Docker Engine“ für Ubuntu bzw. Debian. Die folgenden Befehle fassen diese Anleitung zusammen (Paketquelle von Docker); weicht die aktuelle Anleitung ab, gilt sie. Die Befehle gehören nicht zu TCMSOFT und sind mit TCMSOFT nicht eigens getestet.

Als Administrator (sudo -i) ausführen:

apt-get update
apt-get install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL "https://download.docker.com/linux/$(. /etc/os-release && echo "$ID")/gpg" -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/$(. /etc/os-release && echo "$ID") $(. /etc/os-release && echo "$VERSION_CODENAME") stable" > /etc/apt/sources.list.d/docker.list
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.io

Docker bei jedem Systemstart starten lassen und gleich einschalten:

systemctl enable --now docker

Hinweise:

Prüfen, dass Docker läuft

Diese Prüfungen gelten für alle Plattformen. Führen Sie sie als Administrator (sudo -i) aus.

1. Docker antwortet:

docker version --format '{{.Server.Version}}'

Erwartet: eine einzelne Versionsnummer (die Version von Docker auf dem Gerät). Mit genau diesem Befehl prüft auch der Update-Dienst beim Start, ob er Docker erreicht.

2. Der Socket liegt an der richtigen Stelle:

ls -l /var/run/docker.sock

Erwartet: eine Zeile, die mit s beginnt (eine Socket-Datei) und mit /var/run/docker.sock endet.

3. Prozessor und Speicherplatz passen: Prozessor siehe oben, Speicherplatz unter Voraussetzungen.

Wenn eine Prüfung scheitert

Die Meldungen stammen von Docker bzw. dem System selbst; ihr Wortlaut kann je nach Version leicht abweichen.

Meldung Ursache Was tun
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? Docker läuft nicht. Synology: im Paket-Zentrum den Container Manager starten. UGREEN: die Docker-App starten. Linux: systemctl start docker, danach systemctl status docker.
permission denied while trying to connect to the Docker daemon socket … Befehl ohne Administratorrechte ausgeführt. Erst sudo -i, dann erneut prüfen.
„command not found“ zu docker Docker ist nicht installiert oder die Sitzung ist nicht die des Administrators. Docker wie oben installieren bzw. nach sudo -i erneut versuchen.
ls meldet „No such file or directory“ Docker legt seinen Socket an einer anderen Stelle an (z. B. Rootless Docker) oder läuft nicht. Erst Docker starten. Fehlt der Socket dann immer noch, eine Docker-Installation mit dem Socket unter /var/run/docker.sock verwenden; bei NAS-Geräten den TCMSOFT-Support fragen.

Fehlt der Socket beim Einrichten von TCMSOFT, meldet später auch der Update-Dienst in seinem Protokoll: „Der Updater erreicht Docker nicht: … - ist beim Anlegen „-v /var/run/docker.sock:/var/run/docker.sock“ angegeben?“

Wie es weitergeht

Läuft Docker, richten Sie TCMSOFT ein: TCMSOFT einrichten.