Steuerkram/docs/installation.md

139 lines
3.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 <repository-url> 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 |