# libreshop/demo — copy to .env and edit. Defaults below are # placeholder values; the stack boots clickably with them but mail # stays in stdout-log mode and PayPal stays in sandbox/no-creds mode. # Pinned versions (override per service if you want to test :main). LIBRESHOP_CMS_TAG=v0.1.0 LIBRESHOP_MAIL_TAG=v0.1.0 LIBRESHOP_PDF_TAG=v0.1.0 LIBRESHOP_SHOP_TAG=v0.1.0 LIBRESHOP_NGINX_TAG=v0.1.0 # Where the demo binds nginx (host port). LIBRESHOP_DEMO_PORT=8080 # Strapi DB (local-only credentials; rotate for any non-toy run). CMS_DB_NAME=libreshop CMS_DB_USER=libreshop CMS_DB_PASSWORD=changeme-in-prod # Strapi secrets — generate real values with: openssl rand -base64 32 CMS_JWT_SECRET=changeme-jwt-secret-32-bytes-min!!! CMS_API_TOKEN_SALT=changeme-api-token-salt CMS_ADMIN_JWT_SECRET=changeme-admin-jwt-secret CMS_APP_KEYS=key-a,key-b,key-c,key-d CMS_TRANSFER_TOKEN_SALT=changeme-transfer-salt ADMIN_EMAIL_ADDRESS=admin@example.invalid # Mail relay — leave blank for stdout-log mode (no real email sent). MAIL_SMTP_RELAY_HOST= MAIL_SMTP_RELAY_PORT=587 MAIL_SMTP_RELAY_USERNAME= MAIL_SMTP_RELAY_PASSWORD= # Shop runtime — placeholder demo token, no PayPal client. SHOP_API_TOKEN=demo-shop-api-token SHOP_SITE_URL=http://localhost:8080 SHOP_BASE_URL=/ PAYMENT_ENVIRONMENT=sandbox PAYPAL_CLIENT_ID= # Nginx host header (browser sees this; localhost is fine for the demo). NGINX_HOST=localhost