# Production .env for the hosted-gateway swarm stack. # Copy to .env on the Hostinger host, chmod 600, and `docker stack deploy`. # DATABASE_URL, REDIS_*, BEE_API_URL are set in prod-stack.yaml — do NOT # override here (the stack file uses internal DNS names). # --- Auth --- JWT_SECRET_KEY=change-me-to-a-long-random-string GOOGLE_OAUTH_CLIENT_ID= # --- Operator wallet (the ONLY on-chain identity) --- # Holds xBZZ + xDAI for all tenants. Funded once at bootstrap. OPERATOR_PRIVATE_KEY=0x... GNOSIS_RPC_URL=https://rpc.gnosischain.com # --- T4T protocol contracts (Gnosis mainnet) --- REGISTRY_ADDRESS=0xf81121AAbc2F7261224BaDd0Ed871711e6D1371E ESCROW_ADDRESS=0x34Db8E014E71928f17E23eC1272B602582222c9c XBZZ_ADDRESS=0xdBF3Ea6F5beE45c02255B2c26a16F300502F68da # --- Bee node --- # Postage batch is bought once on first deploy and stored in bee-data volume. BEE_POSTAGE_BATCH_ID= BEE_STAMP_MANAGE=true BEE_STAMP_LABEL=hosted-gateway BEE_STAMP_TTL_DAYS=30 # Used by the Bee service itself (BEE_*_PASSWORD vars below): BEE_PASSWORD=change-me BEE_SWAP_ENDPOINT=https://rpc.gnosischain.com # --- Pricing --- MARKUP_BPS=2000 WELCOME_XBZZ_WEI=50000000000000000000 # --- Concurrency / server --- MAX_CONCURRENT_JOBS=200 LOG_LEVEL=info # --- Phase 2 (Stripe) — leave blank in v1 --- STRIPE_SECRET_KEY= STRIPE_WEBHOOK_SECRET=