Railway

Deploy AppFlowy Cloud | (Just Updated) Notion Alternative Whose Admin Login Actually Works

Notion alternative whose admin login works and public signup is closed

Deploy AppFlowy Cloud | (Just Updated) Notion Alternative Whose Admin Login Actually Works

Just deployed

/data

Just deployed

/var/lib/postgresql

Just deployed

/data

Deploy and Host AppFlowy Cloud on Railway

AppFlowy is the open-source Notion alternative: documents, wikis, databases, kanban boards, AI chat and real-time collaboration, synced across the web app and the AppFlowy desktop and mobile clients. This template runs the full self-hosted AppFlowy Cloud backend — API, realtime websocket, background worker, GoTrue authentication, object storage and the web client — with a working admin account already created for you.

About Hosting AppFlowy Cloud

Upstream ships AppFlowy Cloud as nine containers: nginx, appflowy_cloud, appflowy_worker, appflowy_web, GoTrue, MinIO, an admin frontend, Postgres and Redis. Railway bills per service, so this template folds everything that needs neither its own disk nor its own database engine into one supervised container behind a single nginx gateway — three billed services instead of eight. Postgres (pgvector) and Redis keep their own volumes; the object store lives on the app service's volume.

The deploy is claimed before it is reachable. The container refuses to boot without an admin password, seeds the account before any process binds a port, and re-applies that password on every boot, so a redeploy is a working password reset. Public sign-up is closed by default — set APPFLOWY_ALLOW_SIGNUP=true if you want an open instance — and no SMTP account is required anywhere: the deploy form has zero blank required fields.

Two things a stock AppFlowy deployment gets wrong are fixed here. AppFlowy Cloud refuses to create a user record, and therefore a workspace, for a GoTrue system admin — which is exactly what GOTRUE_ADMIN_EMAIL produces — so on a stock deploy signing in with the advertised admin credentials returns {"code":1024,"message":"User not found"} and never recovers. This template seeds an internal service account for AppFlowy's own admin API calls and gives you a normal account that owns a real workspace. And APPFLOWY_S3_PRESIGNED_URL_ENDPOINT is derived from your public domain, so presigned upload and download URLs point at an address a browser can actually reach rather than at the internal object store.

Every upstream image is pinned, the healthcheck proxies AppFlowy Cloud's own /api/health (a green deploy means a working API, not just a running nginx), and sign-in is rate-limited per client address, keyed on the first X-Forwarded-For entry because Railway's edge hop rotates per request.

Why Deploy AppFlowy Cloud on Railway?

Railway gives AppFlowy Cloud the pieces it needs — Postgres with pgvector, Redis, persistent volumes, TLS and a public domain — without any of them being a separate signup. Scaling memory or CPU is a slider, the database and object store are backed up by the volume, and the whole stack redeploys from one template. Self-hosting means your documents stay in your own Postgres instead of a vendor's, at a predictable monthly cost.

Common Use Cases

  • A private Notion replacement for a team or family, with the AppFlowy desktop and mobile apps syncing to your own server.
  • A company wiki or knowledge base whose data must stay on infrastructure you control.
  • Project and task tracking with kanban boards, databases and shared documents.

Dependencies for AppFlowy Cloud

  • Postgres with the pgvector extension (included).
  • Redis (included).
  • A persistent volume for the object store (included).

Deployment Dependencies

Implementation Details

After deploying, open the service's APPFLOWY_ADMIN_EMAIL and APPFLOWY_ADMIN_PASSWORD variables and sign in at your public URL with those credentials. Changing APPFLOWY_ADMIN_PASSWORD and redeploying resets the password. To invite other people, either turn on APPFLOWY_ALLOW_SIGNUP or invite them from inside the workspace after configuring GOTRUE_SMTP_HOST and friends.


Template Content

More templates in this category

View Template
Libredesk - Complete Setup
[Jul'26] Complete self-hosted omnichannel customer support desk.

codestorm
1
View Template
Paperless-ngx
Document management with OCR on Railway with PostgreSQL and Redis

INAPP
1
View Template
Instatic CMS - Postgres
Design, build and manage powerful static sites from state-of-the-art CMS

Instatic
137