35 lines
1.1 KiB
YAML
35 lines
1.1 KiB
YAML
services:
|
|
app:
|
|
build: .
|
|
container_name: simple-file-upload
|
|
restart: unless-stopped
|
|
# No `user:` here — entrypoint.sh starts as root, chowns the bind mounts
|
|
# to UID 1000, then drops privileges via gosu before running node.
|
|
ports:
|
|
- "${APP_PORT:-3500}:3000" # Web (Upload + Admin)
|
|
environment:
|
|
DB_PATH: /data/db/app.db
|
|
UPLOAD_ROOT: /data/uploads
|
|
WEBDAV_CONFIG_DIR: /webdav-config
|
|
# PUBLIC_BASE_URL can be set via the admin Einstellungen tab instead.
|
|
volumes:
|
|
- ./data/db:/data/db # SQLite DB liegt hier neben docker-compose.yml
|
|
- ./data/uploads:/data/uploads # Kunden-Uploads
|
|
- ./data/logo:/data/logo # Admin-Logo
|
|
- webdav-config:/webdav-config # dynamisch generierte htpasswd + access.conf
|
|
|
|
webdav:
|
|
build: ./webdav
|
|
container_name: simple-file-upload-webdav
|
|
restart: unless-stopped
|
|
ports:
|
|
- "${WEBDAV_PORT:-1900}:80" # WebDAV — Login via DB-Benutzer
|
|
environment:
|
|
WEBDAV_CONFIG_DIR: /webdav-config
|
|
volumes:
|
|
- ./data/uploads:/data/uploads
|
|
- webdav-config:/webdav-config
|
|
|
|
volumes:
|
|
webdav-config:
|