# Installation ## Voraussetzungen - [Docker](https://docs.docker.com/get-docker/) ≥ 24 - [Docker Compose](https://docs.docker.com/compose/install/) ≥ 2.20 (in neueren Docker-Versionen enthalten) - Git --- ## Automatische Installation Das Script `install.sh` übernimmt die gesamte Installation: es erkennt die Linux-Distribution, installiert git, curl und Docker, klont das Repository in das gewünschte Verzeichnis und legt die `.env`-Datei an. Das Script muss **vor** dem Klonen des Repositories heruntergeladen werden – es erledigt das Klonen selbst: ```bash curl -fsSL https://codeberg.org/fds2610/Steuerkram/raw/branch/main/install.sh -o install.sh sudo bash install.sh ``` > Das Script muss als root ausgeführt werden, da es Pakete installiert und ggf. den Docker-Dienst aktiviert. Nach der Installation die `.env`-Datei im gewählten Installationsverzeichnis anpassen und die Container starten: ```bash cd /opt/Steuerkram # oder das gewählte Verzeichnis docker compose up -d ``` --- ## Manuelle Installation ### 1. Repository klonen ```bash git clone steuerkram cd steuerkram ``` ### 2. Konfiguration anpassen ```bash cp .env.example .env ``` ```dotenv DB_PASS=sicheres-passwort # Datenbankpasswort – in docker-compose.yml spiegeln ``` Außerdem in `docker-compose.yml` das `MARIADB_PASSWORD` im `db`-Service auf denselben Wert wie `DB_PASS` setzen. ### 3. Container starten ```bash docker compose up -d ``` Beim ersten Start werden automatisch: - die Datenbank initialisiert - der SKR03-Kontenrahmen eingespielt - das Docker-Image mit PHP-Abhängigkeiten (mPDF) gebaut ### 4. Anwendung aufrufen ``` http://localhost:8080 ``` Beim ersten Aufruf erscheint die **Ersteinrichtung**: dort den ersten Benutzer-Account anlegen. Danach ist die Anwendung passwortgeschützt. --- ## Port ändern Der Standard-Port ist `8080`. Um ihn zu ändern, die `ports`-Zeile in `docker-compose.yml` anpassen: ```yaml ports: - "9090:80" # Beispiel: Port 9090 auf dem Host ``` --- ## Upload-Limit anpassen Die maximale Dateigröße für Beleganhänge ist auf **20 MB** voreingestellt (`php/uploads.ini`). Um das Limit zu ändern: ```ini upload_max_filesize = 20M post_max_size = 20M ``` ```bash docker compose up -d --build ``` --- ## Systemd-Service einrichten Damit Steuerkram automatisch beim Systemstart startet, liegt im Repository die Datei `steuerkram.service`. ### 1. Service-Datei installieren ```bash sudo cp steuerkram.service /etc/systemd/system/steuerkram.service ``` Die Datei setzt `WorkingDirectory=/opt/Steuerkram` voraus. Falls das Repository woanders liegt, den Pfad anpassen: ```bash sudo nano /etc/systemd/system/steuerkram.service ``` ### 2. Service aktivieren und starten ```bash sudo systemctl daemon-reload sudo systemctl enable steuerkram sudo systemctl start steuerkram ``` ### 3. Status prüfen ```bash sudo systemctl status steuerkram journalctl -u steuerkram -f # Live-Log inkl. Migrations-Ausgabe ``` ### Wichtige Befehle | Befehl | Wirkung | |---|---| | `sudo systemctl start steuerkram` | Container starten | | `sudo systemctl stop steuerkram` | Container stoppen | | `sudo systemctl restart steuerkram` | Neustart (z.B. nach Update) | | `sudo systemctl status steuerkram` | Aktueller Status |