Dieser Code erstellt ein Docker-Image zum Starten eines einfachen Webservers. Dieser stellt ein Webformular bereit, auf dem Aktive und Helfer des ADFC bequem die Details einer Geldabrechnung eintragen können. Aus den Angaben wird dann ein fertiges Abrechnungsformular als PDF-Datei mit eingebauter E-Rechnung erstellt, welche die Benutzer herunterladen können.
Important
Docker (und optional Docker Compose) müssen auf dem System installiert sein. Für Einweisungen zu Docker siehe hier.
Auf GitHub stehen fertige Images als Pakete bereit. Diese verwenden standardmäßig die Kontaktdaten und Logos des ADFC Hamburg, können jedoch nach Belieben angepasst werden. Das aktuellste Image kann mit folgendem Befehl heruntergeladen werden:
docker pull ghcr.io/adfc-hamburg/abrechnungsformular:latestDer einfachste Weg, das Docker-Image auszuführen, ist mit Docker Compose. Hierzu wird eine Compose-Datei benötigt; eine vorgefertigte Compose-Datei findet sich hier.
Mit folgendem Befehl kann der Webserver im Hintergrund gestartet werden:
docker compose -f pfad/zur/docker-compose.yml up --detachMit folgendem Befehl wird der Webserver wieder beendet:
docker compose -f pfad/zur/docker-compose.yml downDie bereitgestellte Compose-Datei ist so eingestellt, dass der Server bei Systemneustart ebenfalls gestartet wird, bis er manuell beendet wird. Ist dieses Verhalten unerwünscht, kann aus der Compose-Datei die Zeile restart: unless-stopped entfernt werden.
Die Portnummer, unter der der Webserver erreichbar ist, kann gewählt werden, indem die erste Zahl in der Zeile - 8000:8000 durch die gewünschte Portnummer ersetzt wird.
Zum Abändern der Kontaktdaten sowie der Reisekostenpauschalen wird eine Kopie der Config-Datei benötigt. Nachdem die Werte und Angaben in dieser Kopie angepasst wurden, kann sie in das Docker-Image eingebunden werden. Hierzu wird in der Compose-Datei das #-Symbol in folgenden Zeilen entfernt:
volumes:
- /pfad/zur/CONFIG.ini:/abrechnungsformular/CONFIG.iniDer /pfad/zur/CONFIG.ini muss dabei natürlich angepasst werden. Sollte der Webserver bereits laufen, muss er neu gestartet werden, damit die Änderungen wirksam werden.
Das Logo des Verbandes sollte idealerweise in drei Versionen vorhanden sein: eine reguläre Version, eine Version ohne die Farbe Blau für die Webseite, sowie eine vollständig schwarze Version. Alle gängigen Bildformate werden unterstützt.
Die zu verwendenden Logos müssen auf dem Docker-Image eingebunden werden. Hierzu wird in der Compose-Datei das #-Symbol in folgenden Zeilen entfernt:
volumes:
- /pfad/zum/logo.png:/abrechnungsformular/static/img/logo.pngDer /pfad/zum/logo.png und der Dateiname logo.png müssen dabei angepasst werden. Um mehrere Dateien einzubinden, kann die Zeile mit den Pfaden dupliziert werden. Alternativ kann auch ein Ordner mit den Logos eingebunden werden (z.B. /pfad/zum/ordner:/abrechnungsformular/static/img/ordner).
Zuletzt müssen in der Config-Datei (siehe oben) die korrekten Dateinamen eingefügt werden. Bei Einbinden eines Odners muss auf diesen verwiesen werden (z.B. unterordner/logo.png). Sollte eine der oben genannten Versionen des Logos fehlen, kann eine andere Version als Ersatz mehrfach verwendet werden.