---
title: "Deploy AppFlowy Cloud | (Just Updated) Notion Alternative Whose Admin Login Actually Works"
description: "Notion alternative whose admin login works and public signup is closed"
category: "CMS"
url: https://railway.com/deploy/appflowy-cloud-or-just-updated-notion-al
---

# 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 on Railway](https://railway.com/template/appflowy-cloud-or-just-updated-notion-al)**

- **Creator:** SuperSlowSloth
- **Category:** CMS

## Template content

### appflowy

- **Image:** ghcr.io/bon5co/appflowy-railway:0.17.12
- **Health check:** /healthz
- **Public domain:** Yes

### postgres

- **Image:** pgvector/pgvector:pg16

### redis

- **Image:** redis:8.2.1-alpine
- **Start command:** `/bin/sh -c 'chown -R redis:redis /data && exec docker-entrypoint.sh redis-server --requirepass "$REDIS_PASSWORD" --appendonly yes --dir /data'`

## Documentation

# 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

- [AppFlowy Cloud](https://github.com/AppFlowy-IO/AppFlowy-Cloud) — the self-hosted
  backend.
- [AppFlowy clients](https://appflowy.com/download) — point the desktop or mobile app
  at your deployment's URL.
- [Wrapper image source](https://github.com/bon5co/appflowy-railway).

### 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.


## Similar templates

- [Libredesk - Complete Setup](https://railway.com/deploy/libredesk-complete-setup) — [Jul'26] Complete self-hosted omnichannel customer support desk.
- [Paperless-ngx](https://railway.com/deploy/paperless-ngx-3) — Document management with OCR on Railway with PostgreSQL and Redis
- [Instatic CMS - Postgres](https://railway.com/deploy/instatic-cms-postgres) — Design, build and manage powerful static sites from state-of-the-art CMS

Open this page in a browser: https://railway.com/deploy/appflowy-cloud-or-just-updated-notion-al
