Back to templates
WordPress icon

Deploy WordPress on Sealos

WordPress is a powerful, user-friendly and open source content management system (CMS) that can be used to publish websites, news, blogs and other content on the Internet.

Blog
Deploy WordPress in a few clicks from the Sealos App Store.Run a self-hosted open-source service on Kubernetes-backed infrastructure.Get automatic HTTPS, routing, and resource management from Sealos.Avoid manual YAML while keeping control of the deployed workload.

Why deploy on Sealos

Sealos makes deploying any app effortless, secure, and production-ready. From one-click launch to ongoing operations, we handle the heavy lifting so you can focus on what matters.

One-Click Deploy
Sealos logo
Compute
Networking
Storage
Security
Observability
Your Application is Live

One-Click Deployment

Deploy any app template in seconds. No compose setup, manual configure, and go live.

Managed Kubernetes Reliability

Built on Sealos Managed Kubernetes for high availability, auto-scaling, and self-healing by default.

Automatic HTTPS & Security

Every deployment includes a secure domain with automatic SSL. We handle certificates and text protection for you.

Persistent Storage

Attach persistent volumes with ease. Your data stays safe, durable, and always accessible.

Scale when needed

Adjust resources as your app grows, no downtime required.

You Get the Whole Stack

Sealos provisions and connects every resource your application needs. Everything is ready to use.

One-click, fully provisionedSecure by defaultProduction ready

App Service

Your application is running and ready to serve requests.

Public HTTPS URL

Secure, global endpoint to access your application.

Database

Managed database instance for your application.

Persistent Volume

Durable storage for uploads and application data.

Environment Variables

Configuration and secrets injected securely into your app.

Logs & Metrics

Centralized logs and basic metrics are enabled.

README

README.md

Deploy and Host WordPress on Sealos

WordPress is an open-source content management system for publishing websites, blogs, news, and other web content. This template deploys WordPress 7.0.0 with KubeBlocks MySQL, persistent site storage, an HTTPS Ingress, and a Sealos App entry.

WordPress Screenshot

About Hosting WordPress

The template runs the official WordPress image behind a managed Kubernetes Service. WordPress files, themes, plugins, and uploads are stored on a 1 GiB persistent volume mounted at /var/www/html, so application content survives pod restarts.

KubeBlocks MySQL ac-mysql-8.0.30-1 stores the WordPress database. An idempotent initialization Job creates the mydb database after MySQL becomes reachable. Sealos configures the generated HTTPS hostname and exposes it through the Sealos App entry.

Common Use Cases

  • Content sites: Publish blogs, news, documentation, and company websites.
  • Marketing pages: Combine themes and plugins for campaign pages and lead capture.
  • Editorial teams: Give writers and editors a shared publishing workflow.
  • Small communities: Run a self-hosted site with persistent media and user data.

Architecture and Dependencies

  • WordPress web service: WordPress 7.0.0 listens on port 80.
  • MySQL: A single KubeBlocks MySQL component provides the mydb database and a 1 GiB data volume.
  • Database initialization Job: Creates mydb with the managed MySQL connection Secret and exits after successful initialization.
  • Persistent site storage: The /var/www/html volume stores core files, themes, plugins, and media uploads.
  • Service, Ingress, and App entry: Sealos publishes the HTTPS URL and adds a direct launch entry.

Why Deploy WordPress on Sealos?

Sealos is an AI-assisted Cloud Operating System built on Kubernetes. The template packages WordPress, MySQL, storage, HTTPS routing, and an App entry so a content site can start with one deployment.

  • One-click setup: Provision the application and database together.
  • Persistent content: Keep themes, plugins, and uploads on managed storage.
  • Simple operations: Use Canvas resource cards and the AI dialog for updates.
  • Pay-as-you-go resources: Scale the site as traffic and media storage grow.

Configuration

This template has no additional deployment inputs. Sealos generates the application name and host, and KubeBlocks generates the database connection credentials.

Deployment Guide

  1. Open the WordPress template and click Deploy Now.
  2. Keep the default parameters unless you need a custom application name or host.
  3. Wait for MySQL, the initialization Job, and WordPress to become Ready. Typical Sealos deployments take 2-3 minutes; database provisioning can extend a first cold start. After deployment, Canvas provides the AI dialog and resource cards for further changes.
  4. Open the generated URL from the Sealos App entry.
  5. Complete the WordPress first-run form, choose the site language, create the administrator account, and sign in.

First-time setup, login, and user registration

  • A new deployment opens /wp-admin/install.php. Choose the site language, enter a site title, create the first administrator username and password, then submit the form.
  • Sign in later at /wp-login.php with that administrator account. The dashboard is available at /wp-admin/.
  • WordPress creates the first administrator during installation. Public account registration is controlled by Settings > General > Membership after login; enable Anyone can register only when the site should accept self-service accounts, then choose the default role.
  • Test the flow with a private browser window after enabling registration. Keep the administrator password in a password manager.

Storage and Operations

Use the Canvas resource cards to increase WordPress CPU or memory and to expand the /var/www/html volume as media and plugins grow. Sealos is built on Kubernetes and follows a pay-as-you-go resource model. Back up both the WordPress volume and the MySQL data before a migration or major plugin upgrade; use the Canvas AI dialog for configuration requests.

WordPress receives the MySQL host, port, username, password, and database name from the managed connection Secret. The Ingress allows 32 MiB request bodies and keeps long uploads within a 300-second proxy timeout.

Troubleshooting

The setup page reports a database error

Check that the MySQL Cluster is Ready and that the wordpress-mysql-init Job completed. Re-run the Job only after confirming the connection Secret points to the current MySQL Service.

Media uploads fail

Inspect the /var/www/html volume capacity and the Ingress request limit. Increase storage for large media libraries and keep individual uploads below the configured 32 MiB request limit.

The site uses an old host name

Open the Ingress and App resources in Canvas and confirm the generated app_host value. Update WordPress Address and Site Address from the WordPress settings after changing a custom domain.

Getting Help

Official Links

Additional Resources

License

This Sealos template is provided under the templates repository license. WordPress is distributed under the GNU General Public License version 2 or later.

Related templates

Explore more production-ready templates.

More