No description
Find a file
2025-10-25 15:35:38 +02:00
prompts initial commit 2025-10-25 13:28:36 +00:00
scripts initial commit 2025-10-25 13:28:36 +00:00
README.md kleine korrekturen 2025-10-25 15:35:38 +02:00

Docker-Fobi Begleitmaterial

Schulungsumgebung

Jeder Teilnehmer hat am Schulungstag einen Cloud-Server zur Verfügung:

  • 2 Kerne
  • 4GB RAM
  • 80GB SSD
  • debian13 Grundinstallation

Die Server haben jeweils einen Wildcard-DNS-Record gesetzt, so dass sie unter beliebigen Namen in ihrem Bereich aufgerufen werden können. Die Basis-Adressen folgen dem Schema fobiX.benbex.de, wobei X die Teilnehmernummer ist:

Teilnehmer 1 -> fobi1.benbex.de
Teilnehmer 2 -> fobi2.benbex.de

Damit sind dann auf dem Server fobiX.benbex.de die Dienste zum Beispiel so zu unterscheiden:

  • Webserver: webserver.fobiX.benbex.de
  • Nextcloud: nextcloud.fobiX.benbex.de
  • irgendwas anderes: wurschdsalat.fobiX.benbex.de

Vorbereitungen

Damit ein vernünftiges Arbeiten mit dem Server möglich ist, benötigst du einen SSH-Client: Linux / MacOS / Windows11: integriert ins System. Öffne ein Terminal (bei Windows cmd) und gib ein:

ssh fobiX.benbex.de -l root

das -l steht für "Login Name" und 'root' ist der administrative Nutzer bei Linux. (das X ersetzt du durch deine Nummer 1-6)

Windows10 vor Version 1809: Du benötigst ein Zusatzprogramm, z.B. putty.exe

Bei der ersten Verbindung erhältst du eine Warnung:

The authenticity of host 'fobiX.benbex.de (\<IP-Adresse\>)' can't be established.
ED25519 key fingerprint is SHA256:u5Fb2WImIBh5e/FoRCzgK2uxTpL06o93XiPa+AroL+4.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? 

Diese Warnung ist unter normalen Bedingungen wirklich ernst zu nehmen! Ein Server, den man schon kennt, darf diese Meldung NIE verursachen. Hier merkt man, wenn ein Bösewicht sich eingeklinkt hat. In unserem Fall ist die aber normal und der Aufwand, den Fingerabdruck des Servers zu verifizieren ist für den geplanten Zweck zu aufwändig, so dass wir hier in naivem Vertrauen yes eintippen (bzw. anklicken, falls unter Windows mit putty) Nachdem du dich mit dem Passwort (steht in den geteilten Notizen im BigBlueButton) authentifiziert hast, begrüßt dich nun der Server mit der "message of the day (motd)" und anschließend mit dem System-Prompt:

Linux fobiX 6.12.41+deb13-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.41-1 (2025-08-12) x86_64
(...)
root@fobiX:~# 

Am Prompt (root@fobiX:~# ) kannst du schon einiges sehen:

  • root dein aktuell aktiver Nutzername
  • fobiX der Hostname des Servers, an dem du angemeldet bist
  • ~ du befindest dich gerade in deinem Homeverzeichnis
  • # du besitzt root-Rechte (bei nicht privillegierten Nutzern steht da $)

Erste Schritte

  1. Nachdem verteilt wurde, wer welchen Server bekommt, solltest du den Server auf den neuesten Update-Stand bringen, damit wir alle die selben Voraussetzungen vorfinden.
  • Paketquellen aktualisieren:
root@fobiX:~# apt update
  • Alle Updates ohne erneute Rückfrage installieren:
root@fobiX:~# apt -y upgrade

Dieser Vorgang dauert je nach verfügbaren updates auch mal länger. Bei unseren frischen Server etwa 30 Sekunden.

  1. Um dieses Git-Repo auf dem Server verwenden zu können, benötigst du das Programm-Paket git, welches du mit einem einfachen Befehl installieren kannst:
root@fobiX:~# apt -y install git
  1. Mit git bist du jetzt in der Lage, das komplette Repo auf deinen Server zu clonen. Die Adresse musst du nicht von Hand abtippen (darfst du aber), die kannst du oben im Repo mit einem Mausklick bequem in die Zwischenablage kopieren.
root@fobiX:~# git clone https://git.az-it.net/az/docker-fobi.git

danach wechselst du mit cd d\<TAB\>\<enter\> in das heruntergeladene Verzeichnis. d<TAB> bedeutet: Du tippst den Buchstaben "d" und drückst dann die <TAB>-Taste. Dadurch wird der Rest des Kommandos automatisch vervollständigt, was Tippfehler verhindert und Zeit spart.

Damit hast du jetzt Zugriff auf die Dateien aus dem Repo direkt auf dem Server.

Bash-Skripte im Verzeichnis "scripts"

um verschiedene Vorgänge zu beschleunigen, habe ich die Befehlsabfolgen in Bash-Skripte verpackt. Das hat den Vorteil, dass man die Befehle dann nicht mehr einzeln von Hand eingeben muss, sondern durch den simplen Aufruf des Skriptes automatisch laufen lassen kann. Das läuft dann immer gleich ab. Beispiel 1: führe das Skript 00-Beispiel1.sh aus, indem du

root@fobiX:~# bash scripts/00-Beispiel1.sh

ausführst. Tippe dabei nicht unnötig viel von Hand, sondern verwende oft die -Taste. hier z.B. bash sc\<TAB\>00\<TAB\>

Übersichtlicheren Systemprompt setzen

Im Verzeichnis prompts sind verschiedene Systemprompt-Definitionen gespeichert. Um das Terminal etwas zu verschönern (und übersichtlicher zu machen) setze den Systemprompt durch Eingabe von

. prompts/mit_datum_und_returncode

(vergiss auch hier die -Taste nicht...)