Upload via GUI (24 Dateien)
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
# Plugin- und Theme-Webseite im Docker-Container, erreichbar auf Port 3040.
|
||||
#
|
||||
# docker compose up -d -> http://SERVER:3040 (Image "deskhub-plugins" muss vorher gebaut sein, siehe docker-build.sh)
|
||||
#
|
||||
# DeskHub lädt Plugins und Themes NUR über https. Die Webseite selbst spricht auf Port 3040 nur http; davor muss also ein
|
||||
# HTTPS-Proxy stehen, der die öffentliche Adresse (BASE_URL beim Bauen) auf Port 3040 weiterleitet. Entweder euer vorhandener
|
||||
# Proxy (nginx, Traefik, ...) oder der mitgelieferte Caddy, der das Zertifikat automatisch besorgt:
|
||||
#
|
||||
# PLUGINS_DOMAIN=plugins.example.de docker compose --profile https up -d
|
||||
#
|
||||
# Die Daten (Pakete, Datenbank) liegen im Volume "plugin_daten" und überleben Updates des Images.
|
||||
services:
|
||||
webseite:
|
||||
image: deskhub-plugins:latest
|
||||
restart: unless-stopped
|
||||
read_only: true # Dateisystem schreibgeschützt, nur /data und /tmp sind beschreibbar
|
||||
tmpfs:
|
||||
- /tmp
|
||||
- /var/run/apache2
|
||||
- /var/lock/apache2
|
||||
cap_drop: [ALL]
|
||||
cap_add: [CHOWN, SETUID, SETGID, DAC_OVERRIDE, NET_BIND_SERVICE]
|
||||
security_opt: ["no-new-privileges:true"]
|
||||
volumes:
|
||||
- plugin_daten:/data
|
||||
ports:
|
||||
- "3040:80"
|
||||
|
||||
caddy:
|
||||
image: caddy:2
|
||||
profiles: ["https"] # nur mit --profile https
|
||||
restart: unless-stopped
|
||||
depends_on: [webseite]
|
||||
ports: ["80:80", "443:443"]
|
||||
environment:
|
||||
PLUGINS_DOMAIN: ${PLUGINS_DOMAIN:-localhost}
|
||||
volumes:
|
||||
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
||||
- caddy_daten:/data
|
||||
- caddy_config:/config
|
||||
|
||||
volumes:
|
||||
plugin_daten:
|
||||
caddy_daten:
|
||||
caddy_config:
|
||||
Reference in New Issue
Block a user