Self-host
Self-host path for UGP
Self-host means running the UGP website, server, database, workers, and model/provider configuration on infrastructure you control.
- Prepare a VPS or private infrastructure for the website, server, database, Redis, Qdrant, and workers.
- Configure production env vars for the site URL, API URL, NextAuth secret, Google sign-in, Stripe, and model providers.
- Build the existing `website/` package; do not create a second app beside it.
- Run local verification in a private environment before exposing the service to users.
- Run database migrations, then verify accounts, payments, devices, teams, limits, and history.
- Deploy the website behind HTTPS with security headers and verify public and account routes.
When self-host makes sense
Controlled infrastructure
Use self-host when your team needs to run the website, API, storage, workers, and provider configuration on infrastructure you operate.
Policy review
Self-host is useful when security, procurement, data handling, network access, or model-provider policy must be reviewed before launch.
Explicit ownership
You own the environment variables, domains, backups, deploy procedure, monitoring, and provider keys. UGP should not hide that operational responsibility.
Owner responsibilities
- Keep production secrets out of the repository and deployment evidence.
- Back up database and storage before upgrades or migrations.
- Verify account, billing, download, email, provider, and team flows after every deploy.
- Monitor website, API, workers, Postgres, Redis, Qdrant, and nginx health.
- Document rollback steps before changing production routes or container images.