Deploy WordPress Membership

Members-only content on a fast self-hosted WordPress

Deploy WordPress Membership

Just deployed

/var/lib/mysql

/var/www/html

Just deployed

Deploy and Host self hosted WordPress Membership (Membership Sites on Self-Hosted WordPress) on Railway

This template deploys WordPress with MariaDB and a Valkey object cache, pointed at a members-only site on a domain you own.

About Hosting WordPress Membership open-source software on Railway (self hosted WordPress membership site setup with roles, content gating, and email template)

Running a members-only site on your own domain keeps your member list, content, and uploads on a server you control.

Why Deploy WordPress Membership, the Memberful alternative on Railway (Railway Free Trial)

Memberful takes a platform fee on top of payment processing, and your member list lives on their service.

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 WordPress Membership 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.

Railway vs Other Hosting Providers and VPS for WordPress Membership self hosting

A raw VPS means you assemble the stack yourself, while Railway hands you the three services wired together.

ProviderWhat You Get with RailwayWhat You Get with the Other Provider
DigitalOceanWordPress, MariaDB, and Valkey from one template, with volumes and generated secrets.A droplet you configure by hand, with root access and the setup time that comes with it.
AWSOne project with per-service billing and no VPC or IAM setup to manage.Deep networking and scaling control, with more moving parts before a member can register.
HetznerCustom domains and HTTPS handled for you, so you skip server upkeep.Low-cost servers with generous bandwidth, plus manual installs of PHP, MariaDB, and mail.

Choose Railway when you want the site live fast, and a VPS when you need full server control.

Common Use Cases for hosted WordPress Membership

  • Members-only area with open sign-up: Tick "Anyone can register" under Settings General so visitors can create accounts for gated pages. Leave it off while you test, so only an admin adds users.
  • Narrow role for paying members: Grant paying members a custom role with only the capabilities they need, not Editor. Keep the New User Default Role at Subscriber, since it has just read.
  • Uploads and themes that persist: The volume at /var/www/html keeps core, themes, plugins, and uploads across redeploys, so member content stays put when you ship changes.
  • Registration mail through a relay: Stock account and password emails can land in spam or never arrive. Route them through an SMTP plugin or a transactional email service so members get their confirmation links.
  • Moving off Patreon: Creators who want to own their audience can run a fan community on a domain they control, with their own registration rules instead of a platform's fee structure.

Dependencies for WordPress Membership Docker hosted on Railway

This template runs three services on Railway: a WordPress container, a MariaDB database, and a Valkey cache, all wired together so you can build a members-only site on your own domain.

Deployment Dependencies for Managed WordPress Membership Service (CMS)

The WordPress service uses the image ghcr.io/onepush-dev/wordpress:7.1.3-php8.4, which runs WordPress 7.1.3 on PHP 8.4 with Apache and listens on port 80.

Implementation Details for WordPress Membership (Using WordPress official docker image)

Set WP_HOME to https://your-domain once you add a custom domain, or WordPress will keep generating links to the Railway address.

How does WordPress Membership compare against other ways to run a membership site instead of Patreon or Kajabi

WordPress Membership vs Memberful (Memberful Alternative)

  • Ownership: You own the WordPress install, database, and domain, so members and content stay with you if you move hosts.
  • Cost model: Railway bills for compute and storage, not a revenue cut, which helps as your member list grows.
  • Where Memberful wins: It handles subscription billing, renewals, and access rules out of the box, while here you wire up a membership plugin and payments yourself.

WordPress Membership vs Patreon (Patreon Alternative)

  • Audience reach: Patreon has a built-in fan base; on WordPress you bring your own traffic.
  • Control: You set registration in Settings General, pick the default role, and decide what each tier sees.
  • Where Patreon wins: Payments and community features work the moment you sign up, with no plugin setup or email deliverability work.

WordPress Membership vs Ghost (Ghost Alternative)

  • Built-in publishing: Ghost is built around newsletters and paid subscriptions, so its member flows are more polished.
  • Flexibility: WordPress lets you add any theme, plugin, or custom role, which matters if your site is more than a newsletter.
  • Where Ghost wins: Setup is simpler and subscriptions are first-class, while on WordPress you assemble that behavior from plugins.

WordPress Membership vs Kajabi (Kajabi Alternative)

  • Scope: Kajabi bundles courses, memberships, landing pages, and email in one product, while WordPress gives you a blank canvas.
  • Cost of ownership: You keep the files and database on your own domain, not locked to one vendor's plan.
  • Where Kajabi wins: Its all-in-one toolset saves you from integrating separate plugins for courses, sales pages, and email.

How to use WordPress Membership (the OSS content management system)?

  1. Deploy the WordPress service and add your custom domain.
  2. Set WP_HOME to https://your-domain.
  3. Open Settings General, tick Anyone can register if you want open sign-up, and choose the New User Default Role. Leave it as Subscriber so new accounts only get read, which means they can manage their profile and nothing else.
  4. Confirm the Administration Email Address under Settings General. Click the confirmation link in the email sent after any change, or the new address stays inactive.
  5. If confirmation mail does not arrive, check spam and allow time for delivery. If it still never shows up, consider an SMTP plugin or a transactional email service.
  6. Add users under Users Users, or let them register themselves.

Note: the stack facts do not cover a membership plugin or how logged-in users bypass page cache, so this section shows no code or commands for either.

How to self host WordPress Membership on other VPS Services (WordPress self hosting guide)

Running this stack on your own VPS means you handle the three pieces Railway normally manages: WordPress, MariaDB, and Valkey. The steps below assume Linux with Docker and Docker Compose installed.

Clone the Repository

Pull the source and move into the project folder.

git clone https://github.com/onepush-dev/wordpress.git
cd wordpress

Install Dependencies

Install Docker and Docker Compose, then confirm both respond.

docker --version
docker compose version

Configure Environment Variables

Set the site URL and replace the placeholder passwords with long random strings before the first start.

WP_HOME=https://your-domain
WORDPRESS_DB_PASSWORD=change-me-long-random
VALKEY_PASSWORD=change-me-long-random

Set Anyone can register and the New User Default Role under Settings General only after the installer finishes.

Start the WordPress Membership Application

Bring up the three containers, then open your domain to finish the installer.

docker compose up -d

Railway handles the containers, volumes, domain, and TLS certificate for you, which is the maintenance you would otherwise carry on a VPS.

Official Pricing of WordPress Membership (WordPress pricing)

WordPress itself is free and open source under GPLv2, downloadable from wordpress.org, so there is no license fee to pay. Check Railway's current pricing page for the hosting side.

WordPress Membership cloud vs self hosted comparison (Pricing, features, costs, and more)

Running a members-only site means choosing between a hosted platform that takes a cut and a self-hosted WordPress you control.

Monthly cost of self hosting WordPress Membership on Railway

Railway bills by usage, and the upstream cost range for this stack is about $5-20 per month for a small to medium site, depending on traffic and RAM.

System Requirements for Hosting WordPress Membership on a VPS

On a VPS, plan for about 512 MB to 1 GB of RAM for WordPress plus MariaDB on a small site, with Valkey capped at 256 MB on top of that.

Frequently Asked Questions (FAQs)

Do I need a membership plugin to restrict content by level?

Yes. The Railway template ships WordPress with no membership plugin, so restricting content by level needs one you install yourself.

Why do logged-in users sometimes see cached pages?

The stack has no full-page cache plugin installed, so caching only happens if you add one.

How do I set who can register and what role they get?

Open Settings General, tick "Anyone can register" if you want open sign-up, and choose the New User Default Role. Leave that default as Subscriber so new accounts only get read access.

Why is my confirmation email not arriving?

Check your spam folder and allow some time for delivery.

Should new members be Editors or Subscribers?

Subscribers. An Editor can publish and edit content, which is far more access than a paying member needs. Grant a narrow custom role if members need anything beyond reading.

Is Paid Memberships Pro still installable from wordpress.org?

No. It was closed on wordpress.org on October 17, 2024, so you cannot install it from there.


Template Content

More templates in this category

View Template
Libredesk - Complete Setup
Complete self-hosted omnichannel customer support desk.

codestorm
2
View Template
Paperless-ngx
Paperless-ngx — document management with OCR and full-text search

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

Instatic
167