services: badblocks-personal-site: image: badblocks-personal-site:latest restart: always container_name: badblocks-personal-site volumes: - ./db:/db environment: ANDROID_SMS_GATEWAY_IP: ${ANDROID_SMS_GATEWAY_IP:-192.168.0.1} ANDROID_SMS_GATEWAY_URL: ${ANDROID_SMS_GATEWAY_URL:-http://192.168.0.1:8080} ANDROID_SMS_GATEWAY_LOGIN: ${ANDROID_SMS_GATEWAY_LOGIN:-sms} ANDROID_SMS_GATEWAY_PASSWORD: ${ANDROID_SMS_GATEWAY_PASSWORD:-super-secret-password} ANDROID_SMS_GATEWAY_RECIPIENT_PHONE: ${ANDROID_SMS_GATEWAY_RECIPIENT_PHONE:-555-555-1234} OTP_SUPER_SECRET_SALT: ${OTP_SUPER_SECRET_SALT:-super-secret-salt} healthcheck: test: [ "CMD", "node", "-e", "fetch('http://localhost:4321/health').then(r=>process.exit(r.ok?0:1))", ] interval: 30s timeout: 15s retries: 3 start_period: 120s cap_drop: [ALL] security_opt: [no-new-privileges:true] read_only: true tmpfs: [/tmp] networks: default: name: proxynet external: true