Railway

Deploy Outline CMS [Updated Aug'26]

Outline [Aug '26] (Team Wiki, Notion & Confluence Alternative) Self Hos

Deploy Outline CMS [Updated Aug'26]

Just deployed

/data

Just deployed

/var/lib/outline/data

/var/lib/postgresql/data

Deploy and Host Outline Self-Hosted on Railway

Outline is the open-source team knowledge base that replaces Notion and Confluence for internal documentation. Real-time collaborative editing, markdown-native documents, nested collections, and full-text search, all on infrastructure you control instead of a per-seat SaaS subscription.

About Hosting Outline-Self-Hosted

Notion's Business plan runs $18-20/user/month, and Confluence's Premium plan runs $10.44/user/month, both scaling directly with headcount. A 20-person team on Notion Business pays $360-400/month before any add-ons; the same team on Confluence Premium still clears $200/month. Self-hosted Outline on Railway costs a flat infrastructure fee regardless of how many people are on your team.

The bigger reason to self-host internal documentation specifically isn't only the pricing curve. A team wiki tends to accumulate exactly the content most companies are least comfortable handing to a third party, internal processes, architecture decisions, sometimes credentials or infrastructure details referenced in passing. Keeping that on infrastructure you control is a meaningfully different security posture than trusting a SaaS vendor's own access controls.

It's worth being direct about something easy to miss when setting up Outline for the first time: it has no built-in username/password login at all, confirmed directly in Outline's own configuration reference, at least one OAuth provider (Google, Slack, Microsoft, Discord, or generic OIDC) is required before anyone can sign in. The existing Railway reference template for Outline doesn't mention this in its own description, a deployer following just the headline environment variables (DATABASE_URL, REDIS_URL, URL, SECRET_KEY) would end up with a server that deploys and runs perfectly, with no way to actually log in. This template documents the OAuth requirement prominently, with Google as the simplest starting option.

This isn't a small or unproven project either. Outline has real production adoption among engineering teams specifically, its editor and collection-based organization are frequently cited as a step up from a flat Confluence page tree or an unstructured Notion workspace. That matters for documentation specifically, a wiki nobody can navigate quickly becomes a wiki nobody keeps updated.

Common Use Cases

  • Internal engineering docs: Runbooks, architecture decisions, and onboarding guides in one searchable place.
  • Company-wide knowledge base: HR policies, processes, and team documentation without a per-seat SaaS bill.
  • Product and design documentation: Specs, decision logs, and design docs with real-time collaborative editing.
  • Startups replacing scattered Google Docs: One structured, searchable home for documentation instead of an unorganized Drive folder nobody can find anything in.

Dependencies for Outline-Self-Hosted Hosting

  • Postgres for documents, revisions, and metadata.
  • Redis for caching and background job processing.
  • At least one OAuth provider, Outline has no built-in login of its own.

Deployment Dependencies

This template provisions the Outline app alongside a Postgres database and Redis instance, using Railway's own native database plugins rather than custom Dockerfiles. Reference: Outline GitHub Repository, Outline Self-Hosting Docs, Outline Environment Variable Reference.

Implementation Details

This template runs outlinewiki/outline:1.9.2, Outline's own official image, confirmed via Docker Hub's tags API as matching the current release at authoring time. Postgres SSL is explicitly disabled (PGSSLMODE=disable), confirmed directly in Outline's own configuration reference as an accepted pattern when database and app share a private network, which is exactly Railway's native Postgres plugin setup, not a security shortcut. Uploaded files default to local filesystem storage on a persistent Railway volume, matching the simpler single-service shape of the original reference template rather than requiring S3 setup up front.

How Outline Compares to the Alternatives

Vs. Notion: Notion is a broader, more general-purpose workspace tool covering docs, databases, and project tracking all at once. Outline is purpose-built specifically for structured team documentation, and its self-hosted option has no per-seat fee the way Notion Business does.

Vs. Confluence: Confluence's interface and admin setup carry real legacy complexity, and its self-hosted Data Center tier is priced and positioned for large enterprises. Outline ships a clean, modern editor out of the box and can run entirely on infrastructure you control at a much smaller scale.

Vs. a Wiki.js or plain markdown-in-git approach: A markdown-in-git wiki has zero real-time collaboration, editing conflicts become merge conflicts. Outline supports genuine live multi-user editing, plus collections and full-text search that make documentation actually discoverable, not just stored.

Getting Started

Before you invite anyone, set up your OAuth provider. Google is the simplest starting point for most teams: create an OAuth 2.0 Client ID in Google Cloud Console, add your Railway domain's /auth/google.callback path as an authorized redirect URI, and put the client ID and secret into this service's variables.

Once that's done, open your Railway domain and sign in. The first person to sign in becomes the workspace admin, so make sure that's you, not a teammate testing the link first.

Create your first collection and a handful of real documents, not just a placeholder page, before inviting your whole team. Confirm real-time collaborative editing actually works by having two browser tabs (or two people) edit the same document at once, that's the feature most worth testing directly rather than assuming.

If you're migrating from Notion or Confluence, import a small batch of real documents first rather than your entire existing wiki at once. Formatting doesn't always translate perfectly between platforms, and it's much easier to fix issues on ten documents than on a thousand.

One thing worth testing before you rely on this for real team documentation: redeploy the service once and confirm your documents, collections, and uploaded images are all still there afterward, the real proof persistence is genuinely configured correctly, not just working on first boot.

Why Deploy Outline-Self-Hosted 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 Outline-self-hosted 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.

Frequently Asked Questions

Do I really need to set up OAuth before I can use this?

Yes, this is the one unavoidable manual step. Outline has no built-in username/password login at all, confirmed directly in Outline's own configuration reference. Without at least one OAuth provider configured, the server runs but nobody can sign in.

Which OAuth provider should I use?

Google is the simplest for most teams, a free Google Cloud Console project gets you a working Client ID and Secret in a few minutes. Slack, Microsoft, Discord, and generic OIDC are all supported too if your team already standardizes on one of those.

Why does this template disable Postgres SSL?

Because Railway's native Postgres plugin doesn't set up SSL certificates, and the connection happens entirely over Railway's own private network, not the public internet. Confirmed directly in Outline's own configuration reference as an accepted, documented pattern for this exact setup, not a security shortcut.

Will my documents survive a redeploy?

Yes, documents live in the Postgres database, and uploaded files/images live on a separate persistent Railway volume, both independent of the app service's own redeploys.

Is Outline really free to self-host?

Yes, the core is BSL 1.1 licensed and free to self-host for internal use with no seat limits. Outline Cloud is a separate managed option for teams that don't want to self-host.

Where can I download Outline?

Source code is at github.com/outline/outline, with Docker images published to Docker Hub under outlinewiki/outline. This template pulls a specific verified version automatically.

Can I switch from local file storage to S3 later?

Yes, Outline supports S3-compatible storage via a separate set of environment variables (FILE_STORAGE=s3 plus your bucket credentials). This template defaults to local storage on a Railway volume for simplicity, switching later doesn't require reinstalling, just updating the relevant variables and restarting.

What happens to the first person who signs in?

They become the workspace admin automatically, Outline's own onboarding flow treats the very first successful sign-in as the instance owner. Make sure that's you or someone you trust, not whoever happens to click the link first while testing.


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
Instatic CMS - Postgres
Design, build and manage powerful static sites from state-of-the-art CMS

Instatic
126
View Template
Strapi
A popular self-hosted CMS

Milo
7.7K