Files
kiddo/docs/GETTING_STARTED.md
2026-01-15 17:52:21 +01:00

70 lines
2.2 KiB
Markdown

ID: DOC_000009 | Version: 0.2.3 | Status: Draft
By: Codex (GPT-5)
# Getting Started
## Ziel
Schneller Einstieg fuer neue Nutzer: Installation, erster Login und erste Aktion.
## Voraussetzungen
- Linux-System mit systemd.
- Root-Zugriff (PAM, usermod, shutdown).
- Python 3, curl, tar, sha256sum (fuer Update-Client-Skripte).
- Optional: notify-send (Benachrichtigungen), paplay/aplay (Sound).
## Schnellstart
```bash
# 1) Repo installieren
sudo mkdir -p /opt/sk
sudo git clone ssh://git@git.wlkns.org:2222/stephan/kiddo /opt/sk
# Hinweis: verwende hier die Repo-URL deiner Instanz
cd /opt/sk
# 2) Installation (legt Service-User, env, systemd-Unit an)
make install
# 3) Service pruefen
sudo systemctl status skd.service
# 4) Login (PAM)
curl -s -X POST -H "Content-Type: application/json" \
-d '{"username":"root","password":"..."}' \
http://localhost/login
```
## Erster API-Test
```bash
token=$(curl -s -X POST -H "Content-Type: application/json" \
-d '{"username":"root","password":"example-password"}' \
http://localhost/login | jq -r .token)
curl -s -H "Authorization: Bearer $token" http://localhost/me
```
Hinweis: `jq` ist optional; ohne jq das Token manuell aus der JSON-Antwort lesen.
## Makefile-Kurzbefehle
```bash
make install # Installation (systemd, env, venv)
make up # Service starten
make down # Service stoppen
make restart # Service neu starten
make update # Code-Update (git reset --hard origin/main)
make healthcheck TOKEN=... # Healthcheck mit Bearer-Token
```
## Naechste Schritte
- Konfiguration anpassen: `docs/CONFIGURATION.md`
- API und Web-UI nutzen: `docs/USAGE.md`
- Deployment und Updates: `docs/DEPLOYMENT.md`
## Typische Einsteigerfehler
- Service startet, aber Port 80 ist bereits belegt (loese den Konflikt oder nutze einen anderen Port).
- Login scheitert, weil `SKD_AUTH_ALLOWED_USERS`/`SKD_AUTH_ALLOWED_GROUPS` den Nutzer nicht erlauben.
- OIDC wird erwartet, ist aber nicht aktiv (Issuer/Client-ID/Secret fehlen).
- Token wird nicht gesendet (fehlender `Authorization: Bearer` Header).
## Weitere Dokumente
- Endnutzer-Sicht: `docs/FOR_USERS.md`
- FAQ: `docs/FAQ.md`
- Troubleshooting: `docs/TROUBLESHOOTING.md`