{ "schemaVersion": 2, "$schema": "https://schemas.runtipi.io/dynamic-compose.json", "services": [ { "name": "costco-watch", "image": "git.alexzaw.dev/alexz/costco-watch:latest", "isMain": true, "internalPort": 8080, "environment": [ { "key": "PORT", "value": "8080" }, { "key": "DATA_DIR", "value": "/data" }, { "key": "TARGET_URL", "value": "${TARGET_URL}" }, { "key": "ITEM_LABEL", "value": "${ITEM_LABEL:-Costco item}" }, { "key": "NTFY_URL", "value": "${NTFY_URL:-https://ntfy.alexzaw.dev}" }, { "key": "NTFY_TOPIC", "value": "${NTFY_TOPIC}" }, { "key": "NTFY_TOKEN", "value": "${NTFY_TOKEN:-}" }, { "key": "INTERVAL_MINUTES", "value": "${INTERVAL_MINUTES:-60}" }, { "key": "API_KEY", "value": "${API_KEY}" } ], "volumes": [ { "hostPath": "${APP_DATA_DIR}/data", "containerPath": "/data", "readOnly": false } ], "healthCheck": { "test": "curl -f http://127.0.0.1:8080/health || exit 1", "interval": "60s", "timeout": "5s", "retries": 3, "startPeriod": "10s" } } ] }