Kitchenowl ist die ultimative App für alle, die ihre Einkaufs- und Rezeptplanung optimieren möchten. KitchenOwl ist nicht nur ein intelligenter Einkaufslisten- und Rezeptmanager, sondern auch ein hilfreiches Tool, um Ausgaben zu verfolgen und mit anderen Haushaltsmitgliedern zusammenzuarbeiten. Die App passt sich euren Gewohnheiten an, schlägt Rezepte vor, die euch gefallen könnten, und macht jede Einkaufstour durch die Verwendung von Icons und Kategorien zu einem Vergnügen. Egal, ob ihr eure Mahlzeiten für die Woche im Voraus planen oder einfach nur eure Ausgaben im Blick behalten möchtet, KitchenOwl bietet euch die Flexibilität und Unterstützung, die ihr braucht.
Datum | Änderungen |
---|---|
26.08.2024 | Erstellung dieser Anleitung. |
27.08.2024 | Fehler bei Kapitel 5 behoben. Danke an @2tap2b |
1. Grundvoraussetzung
- Docker & Docker Compose v2 (Debian / Ubuntu)
- TRAEFIK V2 + 3 – REVERSE-PROXY MIT CROWDSEC IM STACK EINRICHTEN
2. Verzeichnis erstellen
Dazu gebt ihr folgenden Befehl ein:
mkdir -p /opt/containers/kitchenowl
3. Docker Compose erstellen
Nun erstellen wir uns eine neue Docker Compose Datei.
nano /opt/containers/kitchenowl/docker-compose.yml
Kopiert nun folgenden Inhalt:
services: kitchenowl: image: tombursch/kitchenowl-web:latest restart: unless-stopped environment: - BACK_URL=kitchenowl-backend:5000 depends_on: - kitchenowl-backend networks: - proxy - default labels: - "traefik.enable=true" - "traefik.http.routers.kitchenowl.entrypoints=websecure" - "traefik.http.routers.kitchenowl.rule=(Host(`kitchenowl.euredomain.de`))" - "traefik.http.routers.kitchenowl.tls=true" - "traefik.http.routers.kitchenowl.tls.certresolver=http_resolver" - "traefik.http.routers.kitchenowl.service=kitchenowl" - "traefik.http.services.kitchenowl.loadbalancer.server.port=80" - "traefik.docker.network=proxy" - "traefik.http.routers.kitchenowl.middlewares=default@file" kitchenowl-backend: image: tombursch/kitchenowl-backend:latest restart: unless-stopped environment: - JWT_SECRET_KEY=PLEASE_CHANGE_ME volumes: - kitchenowl_data:/data networks: - default volumes: kitchenowl_data: networks: proxy: external: true
Noch anzupassen:
- eure Domain bei Traefik (kitchenowl.euredomain.de)
4. CrowdSec Whitelist erstellen
Damit wir später nicht andauernd selbst gesperrt werden, erstellen wir uns noch schnell eine Whitelist für CrowdSec. Gebt dazu folgendes ein:
nano /opt/containers/traefik-crowdsec-stack/crowdsec/config/parsers/s02-enrich/whitelist-kitchenowl.yaml
Inhalt:
name: whitelist-kitchenowl description: "Whitelist for kitchenowl" whitelist: reason: "Exclude URL to solve http-probing errors" expression: - evt.Meta.http_path contains '/socket.io/'
Nun müssen wir CrowdSec noch neu starten, damit die Whitelist übernommen wird.
docker compose -f /opt/containers/traefik-crowdsec-stack/docker-compose.yml up -d --force-recreate
5. JWT Secret generieren
Nun generieren wir uns noch ein JWT Secret. Gebt dazu folgendes ein:
cd /opt/containers/kitchenowl jwt_secret=$(openssl rand -base64 32 | tr -d '=') && sed -i "s|PLEASE_CHANGE_ME|$jwt_secret|" docker-compose.yml
6. Kitchenowl starten
Zum Starten gebt ihr folgendes ein:
docker compose -f /opt/containers/kitchenowl/docker-compose.yml up -d
Nun wartet ihr eine Minute und dann geht ihr auf eure Homepage und solltet folgendes sehen:
Klickt nun unten rechts auf das grüne “+”.
Jetzt erstellt ihr einen neuen Haushalt.
Nun könnt ihr dem Haushalt Sachen hinzufügen.
Danke für die Anleitung, läuft super.
Ich denke bei Schritt 5 (JWT Secret generieren) sollte cd anstatt nano stehen, sonst bringt der zweite Befehl nichts!LG