version: '3.8' services: shelfly: build: context: . dockerfile: Dockerfile.dev ports: - "4000:4000" extra_hosts: - "dockerhost:192.168.1.207" volumes: - .:/app - shelfly_upload:/app/upload - shelfly_db:/app/shelfly_db dns: - 8.8.8.8 - 1.1.1.1 labels: # tu laisses tout ce que Dokploy met déjà, ET tu ajoutes : - traefik.http.middlewares.webdav-allow-methods.headers.accesscontrolallowmethods=GET,PUT,POST,DELETE,PROPFIND,OPTIONS,LOCK,UNLOCK,HEAD - traefik.http.middlewares.webdav-allow-methods.headers.accesscontrolallowheaders=Authorization,Depth,Content-Type,If-Modified-Since,User-Agent,Destination,Overwrite smb: image: dperson/samba:latest container_name: samba ports: - "127.0.0.1:139:139" - "127.0.0.1:445:445" volumes: - shelfly_upload:/mount environment: - TZ=Europe/Paris command: - "-u" # création de l’utilisateur - "cangui;GHT30k7" - "-s" # partage “media” protégé - "media;/mount;yes;no;no;cangui" - "-g" # signature SMB obligatoire - "server signing = mandatory" - "-g" # chiffrement SMB requis - "smb encrypt = required" - "-p" # ajuste les permissions filesystem volumes: shelfly_upload: shelfly_db: