57 lines
2.3 KiB
YAML
57 lines
2.3 KiB
YAML
services:
|
|
webdav:
|
|
image: ghcr.io/vaggeliskls/webdav-server:latest
|
|
restart: unless-stopped
|
|
container_name: webdav
|
|
volumes:
|
|
- /srv/docker/Webdav:/var/lib/dav
|
|
environment:
|
|
# WebDAV Server Configuration
|
|
WEBDAV_OPERATIONS=GET OPTIONS PROPFIND
|
|
|
|
BASIC_AUTH_ENABLED=true
|
|
BASIC_AUTH_REALM=Webdav
|
|
BASIC_USERS=${USERNAME}
|
|
PASSWORD=${PASSWORD}
|
|
# ^ Basic Digest Authentication with users space separated
|
|
|
|
# OAUTH Configuration
|
|
# Keycloak OIDC configuration
|
|
# more options: https://github.com/OpenIDC/mod_auth_openidc
|
|
# OAUTH_ENABLED=false
|
|
# OIDCProviderMetadataURL="http://keycloak/keycloak-auth/realms/master/.well-known/openid-configuration"
|
|
# OIDCRedirectURI="http://my-domain.local/redirect_uri"
|
|
# OIDCCryptoPassphrase="randomly_generated_secure_passphrase"
|
|
# OIDCClientID="webdav-client"
|
|
# OIDCClientSecret="ABC123def456GHI789jkl0mnopqrs"
|
|
# OIDCProviderTokenEndpointAuth="client_secret_basic"
|
|
# OIDCRemoteUserClaim="preferred_username"
|
|
# OIDCScope="openid email profile"
|
|
# OIDCXForwardedHeaders="X-Forwarded-Host"
|
|
|
|
networks:
|
|
- traefik_network
|
|
labels:
|
|
### Auto create icon on Flame dashboard
|
|
- flame.type=application
|
|
- flame.name=${SERVICE_NAME}
|
|
- flame.url=https://${SERVICE_NAME}.${DOMAIN_NAME}
|
|
- flame.icon=https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/webdav.png
|
|
### Traefik Labels
|
|
- traefik.enable=true
|
|
- traefik.http.routers.${SERVICE_NAME}-https.tls=true
|
|
- traefik.http.routers.${SERVICE_NAME}-https.tls.certresolver=cloudflare
|
|
- traefik.http.routers.${SERVICE_NAME}-https.entrypoints=websecure
|
|
- traefik.http.routers.${SERVICE_NAME}-https.rule=Host(`${SERVICE_NAME}.${DOMAIN_NAME}`)
|
|
### Monitor with uptime-kuma
|
|
- kuma.monitoring.group.name=Docker Containers
|
|
- kuma.${SERVICE_NAME}.docker.parent_name=monitoring
|
|
- kuma.${SERVICE_NAME}.docker.name=${SERVICE_NAME}
|
|
- kuma.${SERVICE_NAME}.docker.type=docker
|
|
- kuma.${SERVICE_NAME}.docker.docker_container=${SERVICE_NAME}
|
|
- kuma.${SERVICE_NAME}.docker.docker_host=1
|
|
- 'kuma.${SERVICE_NAME}.docker.tag_names=[{"name": "docker_tag"}]'
|
|
|
|
networks:
|
|
traefik_network:
|
|
external: true |