Deploy Etherpad

Real-time collaborative document editor on Postgres, with a protected admin

Deploy Etherpad

/var/lib/postgresql/data

Just deployed

Deploy and Host Etherpad on Railway

Etherpad is an open-source, real-time collaborative text editor. Several people can write in the same document at once and see each other's changes as they type, with author colours, chat and a full revision history. It runs in the browser, needs no accounts by default, and can be extended with plugins.

About Hosting Etherpad

Hosting Etherpad means running its Node.js server behind HTTPS with a database that keeps every pad and revision. This template runs the official etherpad/etherpad image (3.3.16, pinned by digest) next to Railway Postgres, wired together over the private network. The start command turns on proxy trust for Railway's HTTPS edge, selects Postgres, turns off the public /stats endpoint, and waits for the database before starting. The admin password and the built-in SSO client secrets are generated at deploy time, so no default credentials exist. Pads are stored in Postgres, so they survive redeploys and restarts.

Common Use Cases

  • Writing meeting notes, agendas and minutes together in real time
  • Drafting documents, articles or class material with a team or a classroom
  • Running a self-hosted, privacy-friendly alternative to hosted document editors

Dependencies for Etherpad Hosting

  • Etherpad server (official Docker image etherpad/etherpad)
  • PostgreSQL database (Railway Postgres)

Deployment Dependencies

Implementation Details

Admin panel: open /admin on your Etherpad's Railway domain. The user is admin and the password is the generated ADMIN_PASSWORD variable on the Etherpad service.

Who can edit: like a standard Etherpad, anyone who knows a pad's URL can open and edit it. To make every visitor log in, set REQUIRE_AUTHENTICATION=true on the Etherpad service. Visitors then sign in as user with the generated USER_PASSWORD, or as admin.

Settings: any option from Etherpad's settings.json.docker can be set as a variable on the Etherpad service, for example TITLE, DEFAULT_PAD_TEXT, SKIN_VARIANTS or LOGLEVEL. Plugins installed from the admin panel are not kept across redeploys. To keep a plugin, build your own image with the ETHERPAD_PLUGINS build argument.

HTTP API: Etherpad 3 authenticates API calls with OAuth2 through its built-in SSO provider. The client secrets ADMIN_SECRET and USER_SECRET are generated for you, and the issuer is your Railway domain.

Why Deploy Etherpad on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Etherpad on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


Template Content

More templates in this category

View Template
Rocky Linux
Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
51
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
52