Render
Free web service with your external PostgreSQL database. Secrets are generated automatically.
Deploy to RenderThese templates assemble a lightweight Node.js container around the prebuilt latest stable release PostgreSQL executable, with one application instance connected to PostgreSQL. They reuse the existing HTTP/SSE/WebSocket bridge and verify the release archive checksums. No Rust build is required. The ordinary CLI container only includes SQLite, so it cannot replace this image. The service and database can incur charges; review the selected plans before deploying.
Render
Free web service with your external PostgreSQL database. Secrets are generated automatically.
Deploy to RenderHeroku
Basic dyno + Essential PostgreSQL. Bring your encryption key; the database is created for you.
Deploy to HerokuNorthflank
Import the template to create a project, PostgreSQL database, and service. A public share link is not yet available.
Open template editorThe same images are published to four registries for amd64, arm64 and riscv64. Pick the one closest to you:
| Registry | Image |
|---|---|
| Docker Hub | gproxy2/gproxy |
| GitHub | ghcr.io/leenhawk/gproxy |
| GitLab | registry.gitlab.com/leenhawk1/gproxy |
| CNB | docker.cnb.cool/leenhawk/gproxy |
Stable versions use vX.Y.Z tags, beta uses staging, and development snapshots use nightly; append -musl for musl images. Old v3 tags do not run v4.
export GPROXY_IMAGE='gproxy2/gproxy:<tag>'# Set GPROXY_MASTER_KEY to your saved 32-byte key (64 hex digits or base64).docker run -d --name gproxy --restart unless-stopped \ -p 127.0.0.1:8787:8787 \ -v gproxy-data:/app/data \ -e GPROXY_MASTER_KEY \ "$GPROXY_IMAGE"docker logs gproxySave the administrator credentials from the first startup log, then open /console/. The image runs as 65532:65532, so a bind-mounted directory must be writable by that user. Keep the /app/data volume when replacing the container.
render.yaml Blueprint: a Free web service using an external PostgreSQL database.GPROXY_DATABASE_URL to your external PostgreSQL connection URL and deploy the service. The database must be reachable from Render; preserve any SSL parameters required by your database provider. Render generates the administrator password and encryption key.GPROXY_ADMIN_PASSWORD and GPROXY_MASTER_KEY. Visit the service URL followed by /console/ and sign in as admin.The template does not create a database. The Render web service uses the free plan; external database pricing and limits depend on your provider. Free web services sleep when idle, so the next request may take longer. The health check is /healthz on port 8787.
openssl rand -hex 32 and save it.GPROXY_MASTER_KEY.heroku-postgresql:essential-0 add-on, then deploy.GPROXY_ADMIN_PASSWORD from Settings → Reveal Config Vars and sign in as admin at /console/.The root app.json and heroku.yml use deploy/serverless/Dockerfile. The Node.js entry listens on Heroku’s dynamic PORT, and the shared gateway reads DATABASE_URL. It supports Heroku’s assigned runtime UID. Local files are temporary; configuration, credentials, usage, and cache state are stored in PostgreSQL.
PROJECT_NAME argument and the Project node’s region (europe-west) if needed, then save and run it.nf-compute-20; the database requests 4 GiB of storage. Review these plans before running.gproxy-secrets secret group and save the generated GPROXY_ADMIN_PASSWORD and GPROXY_MASTER_KEY. Open the service’s public HTTPS URL followed by /console/ and sign in as admin.Northflank’s shareable template links are generated from a saved template in an account. This repository provides an importable template; it does not yet have a published Northflank share link. To provide a direct deployment button, save the template and generate a public share link. Check its access scope and expiry before sharing it.
The secret group links the database’s POSTGRES_URI to GPROXY_DATABASE_URL. The service builds deploy/serverless/Dockerfile from the repository’s dev branch with deploy/serverless as its build context. Northflank preserves generated secrets across template runs. Readiness checks use /healthz on port 8787.
GPROXY_MASTER_KEY across updates. Back up both. These templates accept GPROXY_DATABASE_URL or the platform’s DATABASE_URL.GPROXY_RELEASE_VERSION=latest) and verify SHA-256. To upgrade, clear the platform build cache and redeploy. To pin a version, set this Docker build argument to a release tag; the release must contain both serverless Linux archives and SHA256SUMS.GPROXY_PUBLIC_BASE_URL to the public HTTPS origin when using OAuth or published file URLs. These templates do not enable file storage. Use a custom native CLI build for filesystem or object storage support. Client IPs are taken from the socket peer, which can be the platform router; forwarded client-IP headers are not trusted.For Workers and function deployments, see the Cloudflare, Netlify, and Vercel guide.