Archived
Private
Public Access
1
0
This repository has been archived on 2026-02-04. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
ProjectManager/README.md

3.3 KiB

Project Manager

Der ProjectManager ist ein Tool zum Verwalten von mehreren PocketBase Instanzen. Es handelt sich hierbei um ein einfach zu benutzendes WebInterface zum Erstellen, Bearbeiten und Löschen von PocketBase Instanzen.

Features

  • Automatische Docker Konfiguration
  • Automatisches DNS Mapping
  • Automatische SSL-Konfiguration mithilfe von NginxProxyManager
  • Projekt Transferierung auf verschiedene Nodes
  • Eigene Domains
  • Mehrere Sprachen

Installation

Die Installation erfolgt durch eine Docker-Compose Datei. Hierbei werden zwei Container, einer für das Backend und einer für das Frontend, gestartet. Die Standartkonfiguration sieht wie folgt aus:

version: '3.0'
services:
  frontend:
    image: git.leon-hoppe.de/leon.hoppe/projectmanager_frontend:latest
    restart: unless-stopped
    environment:
      - BACKEND=https://api.example.com
    ports:
      - '4220:4000'

  backend:
    image: git.leon-hoppe.de/leon.hoppe/projectmanager_backend:latest
    restart: unless-stopped
    environment:
      - FRONTEND=https://example.com
      - GENERAL__DATABASE=server=1.2.3.4;database=ProjectManager;user=ProjectManager;password=changeMe
      - GENERAL__ROOT=/projects
      - PROXY__ENABLE=true
      - PROXY__URL=https://proxy.example.com
      - PROXY__EMAIL=admin@example.com
      - PROXY__PASSWORD=changeMe
      - PROXY__DOMAIN=api.example.com
      - PROXY__HOST=1.2.3.4
    ports:
      - '4221:80'
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

Environment Variablen

Variable Bedeutung
BACKEND Die URL des Backends
FRONTEND Die URL des Frontends
GENERAL__DATABASE Der MySql Connection String
GENERAL__ROOT Ordner auf dem Hostsystem zur Speicherung der PocketBase Dateien
PROXY__ENABLE Aktiviert die eingebaute SSL Verschlüsselung durch NginxProxyManager
PROXY__URL Die URL für das WebInterface des NginxProxyManager
PROXY__EMAIL E-Mail-Adresse für einen Admin Benutzer von NginxProxyManager
PROXY__PASSWORD Passwort für einen Admin Benutzer von NginxProxyManager
PROXY__DOMAIN Standart Domain für PocketBase instanzen ([id].api.example.com)
PROXY__HOST Hostadresse des Servers (für die reverse proxy)

Docker Images von SourceCode generieren

Falls Sie den SourceCode selbst bearbeiten wollen, steht Ihnen dieser natürlich zur Verfügung. Um das Backend im Debug Modus zu verwenden sollten sie eine appsettings.Development.json Datei im Hauptverzeichnis anlegen um dort die entsprechende Konfiguration für die Entwicklungsumgebung erstellen. Zum Debuggen empfehle ich npm run dev:ssr um das Frontend zu starten und dotnet run um das Backend zu starten. Sofern Sie mit den Bearbeitungen fertig sind, gibt es eine docker-compose.example.yml Datei im dem Repository die automatisch den SoruceCode neu baut und die Container startet. Wahlweise können Sie diese mit docker build auch selbst bauen.