Sign inSign up

techbygiusi/geldstueck-web

By techbygiusi

•Updated 8 days ago

Geldstück Web-App & PWA – selbst gehosteter Ausgaben- und Budget-Tracker.

Image
0

3.6K

techbygiusi/geldstueck-web repository overview

⁠Geldstück Web

Die responsive Web-Oberfläche und installierbare PWA für Geldstück, einen einfachen selbst gehosteten Ausgaben- und Budget-Tracker. Beim ersten Start wird die Adresse eines Geldstück-Servers abgefragt. Danach können sich Benutzer anmelden und ihre Daten zwischen Web und Android synchronisieren.

⁠Funktionen

  • responsive Oberfläche für Desktop, Tablet und Smartphone
  • als PWA installierbar
  • frei wählbare Serveradresse
  • Einnahmen und Ausgaben erfassen
  • Kategorien und Monatsbudgets
  • Monatsübersicht und Auswertungen
  • Dark Mode
  • deutsche Oberfläche und EUR-Formatierung

⁠Schnellstart

docker run -d \
  --name geldstueck-web \
  --restart unless-stopped \
  -p 8080:80 \
  techbygiusi/geldstueck-web:latest

Danach die Web-App unter http://localhost:8080 öffnen. Bei der Ersteinrichtung wird die öffentlich erreichbare URL der Geldstück-API eingetragen, zum Beispiel https://money-api.example.de.

Die Web-App benötigt zusätzlich den Container techbygiusi/geldstueck-server und PostgreSQL. Ein vollständiges Compose-Beispiel steht weiter unten.

⁠Vollständige Installation mit Docker Compose

services:
  database:
    image: postgres:17-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: geldstueck
      POSTGRES_USER: geldstueck
      POSTGRES_PASSWORD: CHANGE_ME_DATABASE_PASSWORD
    volumes:
      - money-data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U geldstueck -d geldstueck"]
      interval: 5s
      timeout: 5s
      retries: 12

  server:
    image: techbygiusi/geldstueck-server:latest
    restart: unless-stopped
    environment:
      DATABASE_URL: postgres://geldstueck:CHANGE_ME_DATABASE_PASSWORD@database:5432/geldstueck
      JWT_SECRET: CHANGE_ME_TO_A_LONG_RANDOM_SECRET
      CORS_ORIGIN: https://money.example.de
      PORT: 3000
    depends_on:
      database:
        condition: service_healthy
    ports:
      - "3000:3000"

  web:
    image: techbygiusi/geldstueck-web:latest
    restart: unless-stopped
    depends_on:
      - server
    ports:
      - "8080:80"

volumes:
  money-data:

Stack starten:

docker compose up -d

⁠Ports

Container-PortVerwendung
80Web-App über Nginx

⁠Updates

docker compose pull
docker compose up -d

Für reproduzierbare Installationen statt latest den Tag 0.1.0 verwenden.

⁠Produktion

  • Web-App und API über einen Reverse Proxy mit HTTPS veröffentlichen.
  • In der Web-App eine vom Browser beziehungsweise Android-Gerät erreichbare API-Adresse eintragen; localhost bezeichnet immer das jeweilige Gerät.
  • Die API-CORS-Konfiguration auf die tatsächliche Web-Domain beschränken.
  • Unterstützte Plattform des aktuellen Images: linux/amd64.

Tag summary

Content type

Image

Digest

sha256:ce590627b…

Size

20.2 MB

Last updated

8 days ago

docker pull techbygiusi/geldstueck-web