services: app: image: keglin/pinchflat:${PINCHFLAT_VERSION:-latest} container_name: pinchflat-app environment: - TZ=${PINCHFLAT_TZ:-America/Los_Angeles} - LOG_LEVEL=info - JOURNAL_MODE=delete - YT_DLP_WORKER_CONCURRENCY=1 - BASIC_AUTH_USERNAME=${PINCHFLAT_AUTH_USER:-admin} - BASIC_AUTH_PASSWORD=${PINCHFLAT_AUTH_PASS:-changeme} - SECRET_KEY_BASE=${PINCHFLAT_SECRET_KEY} - UMASK=${PINCHFLAT_UMASK:-022} ports: - ${PINCHFLAT_PORT:-8945}:8945 volumes: - pinchflat-app:/config - ${PINCHFLAT_DOWNLOAD}:/downloads healthcheck: test: ["CMD-SHELL", "curl --fail http://localhost:${PORT}/healthcheck || exit 1"] interval: 30s start_period: 15s deploy: resources: limits: memory: 512M restart: unless-stopped volumes: pinchflat-app: name: pinchflat-app driver: local driver_opts: type: nfs o: "addr=${PINCHFLAT_NFS_SERVER},rw,noatime,rsize=65536,wsize=65536,timeo=600,nfsvers=4" device: "${PINCHFLAT_NFS_DEVICE}"