WordPress Self-Hosted
BeginnerWebsiteSelf-hosted WordPress with Docker: the world's CMS on your own infrastructure.
Published 27 September 2026
About WordPress Self-Hosted
WordPress Self-Hosted runs WordPress and MariaDB as Docker containers on your own server: the same WordPress core managed hosts run, the same block editor, and the same plugin and theme ecosystem, with your content in your database and your uploads on your disk. The official image bundles PHP with Apache, so the container is the application server and nothing else is needed beside the database.
Managed WordPress hosts, WP Engine and Kinsta among them, charge per site and meter visits, storage, and sometimes plugins. Self-hosting on a VPS replaces all of that with a fixed server bill: as many sites as the server fits, any plugin, any theme, and WP-CLI plus the built-in updater under your control. One server carrying several sites is normal, and it's exactly what per-site hosts charge for.
The trade is everything that comes with running PHP on the open internet. TLS, backups, and update hygiene are yours, and WordPress's popularity makes it the most-targeted CMS on the web: updates stay on a schedule, the reverse proxy handles certificates, and a staging copy before big changes is worth the hour it takes.
For teams that want the same software with the operations removed, WordPress.com and the managed hosts exist. The point of this stack is that the same flexibility is one small VPS away, at 2 GB of memory for a few modest sites.
Key Features
- ✓Official WordPress Docker image with MariaDB behind it
- ✓The full plugin and theme ecosystem: 60,000-plus plugins with no vendor gating
- ✓Several sites on one server at a fixed cost
- ✓WP-CLI for updates, backups, and migrations from the terminal
- ✓The same block editor experience as WordPress.com
When to Use WordPress Self-Hosted
- →Agencies and freelancers hosting several client sites on one server
- →Blogs and business sites that outgrew shared hosting
- →WooCommerce stores that need plugin freedom and predictable costs
- →Sites that depend on plugins or custom code a managed host restricts
- →Developers learning WordPress operations on a cheap VPS
Pros
- No per-site or per-visit pricing: the server bill is the whole bill
- Any plugin, any theme, and custom code, with no host-level restrictions
- Every WordPress tutorial on the internet applies to your setup
Cons
- Update hygiene is a security obligation, not an option
- Backups, TLS, and staging are yours to build
- A compromise on one plugin can be a compromise on the server
Database Options for WordPress Self-Hosted
The WordPress community's standard database and the default in the official Docker Compose examples: fully supported and community-maintained. It holds posts, users, settings, and plugin data, while uploads stay on disk, so a backup needs both.
These are highlighted picks. To see all the tools, check the Databases category.
Hosting Options for WordPress Self-Hosted
The default: a flat-rate root VPS whose entry instance has 4 GB of memory for around €4-5/mo, double what a few modest WordPress sites need, so a handful of sites share it. The fixed bill replaces every per-site managed price; backups and updates are yours.
Hostinger's VPS line (not its shared WordPress plans) gives a root server from about $6.50/mo with 4 GB of memory and a beginner-friendly panel, a bridge between managed hosting and full self-hosting. Promotional prices assume a two-year term, with higher renewals.
DigitalOcean's WordPress 1-Click starts the stack pre-assembled, the quickest first deploy. The 2 GB Droplet (about $12/mo) fits a few modest sites, snapshots cover whole-server backups, and Spaces can offload the media library through a plugin.
A hobbyist target: the official WordPress image has ARM64 builds and runs fine for a home or lab site with no monthly bill. A home connection and SD-card storage make it the free tier of self-hosting rather than a production plan; pair it with a tunnel instead of opening ports.
These are highlighted picks. To see all the tools, check the Hosting & Cloud category.
Reverse Proxy Options for WordPress Self-Hosted
The classic WordPress front, with fast static-file serving that every caching-plugin guide assumes. In front of the official Apache image it proxies with X-Forwarded-Proto set; WordPress then needs its HTTPS detection added in wp-config.php, or logins loop between HTTP and HTTPS.
Automatic certificates from a small config, the least upkeep for a few sites. Caddy sends X-Forwarded-Proto by default, and WordPress still needs to trust it: set HTTPS from that header in wp-config.php, or admin logins redirect in a loop.
Self-Hosted PaaS Options for WordPress Self-Hosted
Free and self-hosted, with a one-click WordPress template that ships the CMS with its database and HTTPS through Coolify's bundled Traefik, the fastest credible start short of a marketplace Droplet. Check that wp-config.php trusts X-Forwarded-Proto behind its proxy, or logins redirect in a loop.
WordPress Self-Hosted Add-ons
Each addition below extends this stack with a capability the base stack works fine without. None are required: include the ones your product actually needs when building this stack, and skip the rest.
Tunnel Add-ons
Add a tunnel when you're self-hosting without a static IP or can't open inbound ports — a home server, a VPS behind restrictive network policies, or anywhere a reverse proxy alone can't reach the internet.
Keeps a home or lab WordPress reachable without opening ports or paying for a static IP: outbound-only, with Cloudflare's edge in front.
Frequently Asked Questions about WordPress Self-Hosted
Why self-host WordPress instead of using WordPress.com?
Price per site and control. WordPress.com's paid plans run $9-70 a month per site billed yearly, and every paid plan now installs plugins, with updates, backups, and security handled for you. This stack runs the same software for the price of one server, however many sites it carries, with root access for custom code, server-level caching, and any PHP setting. The trade is that updates, backups, and security become yours.
What does the server need to run?
2 GB of memory and 1-2 vCPUs carry a few modest-traffic sites with MariaDB on the same server. WordPress itself sets requirements only at the software level (PHP and the database), and its hosting handbook suggests 256 MB per PHP process, so memory scales with concurrent visitors and plugin weight rather than site count. 20 GB of SSD fits several sites; media libraries are what fill it.
Can WooCommerce run on this stack?
Yes. WooCommerce is a plugin, and this server runs plugins without restriction. Size for it: a store with real traffic wants its own instance with 4 GB or more and a tuned MariaDB, plus an object cache such as Redis, rather than a slot on a small shared server.
How many sites can one server carry?
A few, comfortably. Each site adds a set of database tables and a container, and modest-traffic sites share a 2 GB server easily. The honest limits are traffic and plugins per site, not site count; when one site gets busy, give it its own server rather than growing the shared one.
Why won't email send from the server?
Because a fresh VPS has no mail reputation. Mail from an unknown IP lands in spam or is refused, and most providers block outbound port 25 by default. The working pattern is an SMTP plugin with an external mail service: the server runs the site, and someone else delivers its mail.
Stacks Related to WordPress Self-Hosted
Strapi Self-Hosted
InfrastructureSelf-hosted Strapi: an open-source headless CMS with PostgreSQL, on a server you control.
Grafana Self-Hosted
InfrastructureSelf-hosted Grafana and Prometheus: metrics dashboards and alerting on a server you run.
Airflow Self-Hosted
InfrastructureSelf-hosted Apache Airflow: the standard data-pipeline scheduler on your infrastructure.
n8n Self-Hosted
InfrastructureSelf-hosted n8n on your own server, with full control over the database, the host, and how it's exposed to the internet.
Scores
Popularity5/5
WordPress powers a large share of the web and is the best-known CMS by a wide margin.
Learning Curve1/5
WordPress is the most familiar CMS there is, and the Docker image plus a database is about as simple as self-hosting gets.
Flexibility5/5
Tens of thousands of plugins and themes, plus custom PHP, cover blogs, stores, memberships, and nearly any site type.
Performance3/5
A small server serves modest sites well; heavy traffic calls for page caching, an object cache, and a tuned database.
Portability4/5
Standard exports and a plain MySQL-family database move sites between any WordPress host, though themes and plugins tie a site to WordPress itself.
Tools in the WordPress Self-Hosted Stack
WordPress Self-Hosted Pricing
WordPress, MariaDB, and Docker are free, and the bill is one server that carries several sites, which is what managed WordPress hosts and WordPress.com charge per site for ($9-70 a month on WordPress.com's paid plans). The only paid items are optional: premium themes and plugins, priced by their vendors.
2 GB of RAM runs WordPress, MariaDB, and the proxy for a few modest-traffic sites.
GPL-licensed, both of them; most of the plugin ecosystem is free too.
Priced per vendor, per site, or per year, and never required to run the stack.
WordPress Self-Hosted System Requirements
- CPU
- 1-2 vCPU
- RAM
- 2 GB, enough for a few modest-traffic sites to share
- Disk
- 20 GB SSD
- OS
- Any Linux with Docker
No official requirements published — tekyous guidance based on the bundle's services.
Official requirements stay at the software level, where the Hosting Team handbook's memory guidance is per PHP process (256M recommended); the estimate follows agency-reported tiers of 1-2 GB for personal sites and 2-4 GB for business sites. Traffic and plugin weight per site set the real limits.