This guide walks you through deploying a self-hosted WordPress site using Cloudron β€” a powerful server management platform that handles TLS certificates, automatic updates, and backups, so you can focus on building your site rather than maintaining infrastructure. By the end, you will have a fully operational WordPress installation running at your own domain, with automatic SSL certificate management, automated backups, and a clean, maintainable server setup that scales with your needs.

Step 1: Prepare Your Server

Start with a fresh, clean server β€” do not use an existing machine that already has Apache, Nginx, or another web server installed. Port conflicts will prevent Cloudron from configuring correctly and may cause the installation to fail entirely.

  • Operating system: Ubuntu 22.04 LTS. This is the version Cloudron officially supports and most thoroughly tests against β€” other distributions are not recommended.
  • RAM: 2 GB minimum. 4 GB or more is strongly recommended if you plan to run additional apps alongside WordPress, or if you expect moderate to high traffic volumes.
  • Disk space: 20 GB minimum for the operating system and Cloudron itself. Budget additional space based on your expected media uploads, plugin files, theme assets, and database growth over time.
  • Access: Root or sudo SSH access to the server is required throughout the installation process.
  • Open ports: Ensure ports 80 (HTTP), 443 (HTTPS), and 22 (SSH) are reachable through your server’s firewall or cloud provider security group. Port 80 is specifically required for Let’s Encrypt certificate validation during installation β€” without it, the installer will not be able to provision your TLS certificate.

Step 2: Domain and DNS Setup

Cloudron requires a dedicated subdomain for its management interface, and your WordPress site will need its own subdomain as well. It is essential to configure DNS before running the installer β€” Cloudron will attempt to issue a TLS certificate during installation, and that process requires your domain to already be resolving to your server’s public IP address.

  • Log into your DNS provider and navigate to the DNS management section for your domain.
  • Create an A record for the Cloudron management interface pointing to your server’s public IP address. A common convention is my.yourdomain.com, though any subdomain you prefer will work.
  • Optionally, create a second A record now for your WordPress subdomain (e.g., www.yourdomain.com or blog.yourdomain.com) pointing to the same IP address. You can also add this record later in Step 5 when you install WordPress β€” just ensure it is in place before that step.

DNS propagation can take anywhere from a few minutes to several hours depending on your provider and TTL settings. Verify your records are resolving correctly before proceeding by running dig my.yourdomain.com in a terminal, or use an online DNS lookup tool such as dnschecker.org. The installer will fail to issue a TLS certificate if DNS has not yet propagated to your server’s IP.

Step 3: Install Cloudron

Connect to your server via SSH and run the following three commands to download and execute the Cloudron installer:

wget https://cloudron.io/cloudron-setup
chmod +x ./cloudron-setup
./cloudron-setup

The installer will prompt you for your Cloudron domain (the subdomain you created in Step 2). It will then automatically install Docker, configure the system, and request a TLS certificate from Let’s Encrypt on your behalf. The full installation process takes approximately 10–15 minutes. Do not close or interrupt your SSH session while it is running β€” doing so may leave the installation in an incomplete state.

When the installer completes successfully, it will display your Cloudron admin URL. Open that URL in a browser to proceed to the initial configuration wizard.

Step 4: Initial Cloudron Configuration

Open your Cloudron admin URL (e.g., https://my.yourdomain.com) in a browser and work through the setup wizard:

  1. Create your admin account. Use a strong, unique password β€” this account has full administrative control over every app running on your server, so treat it accordingly.
  2. Configure SMTP email. Cloudron uses outbound email to send system notifications, backup alerts, and user invitations. You can connect a transactional email provider such as Mailgun, SendGrid, or Amazon SES, or any SMTP server you have access to. Cloudron offers an automatic setup option for several supported providers. Do not skip this step β€” without SMTP configured, you will receive no system alerts and may miss critical warnings about failed backups or certificate issues.
  3. Configure backup storage. Navigate to the Backups tab and set a destination β€” either a local path on the server or an S3-compatible cloud storage bucket. Automated backups will not run until a valid destination is configured, so complete this before you have any data worth protecting.

Step 5: Install WordPress via Cloudron App Store

With Cloudron fully configured, installing WordPress takes only a few clicks through the built-in app store:

  1. Log into the Cloudron dashboard and click App Store in the navigation menu.
  2. Search for “WordPress Developer” and select it from the results. This is Cloudron’s officially maintained WordPress package, which includes WP-CLI and additional developer tooling alongside the standard WordPress installation β€” making it ideal for both production sites and development environments.
  3. Click Install. You will be prompted to enter the subdomain where your WordPress site should be hosted (e.g., www.yourdomain.com). Confirm that this subdomain already has a DNS A record pointing to your server, as outlined in Step 2.
  4. Cloudron will pull the WordPress container image, configure a dedicated database, set up the subdomain routing, and automatically provision a TLS certificate. The entire installation process typically completes within two to three minutes.

Step 6: Access and Configure Your WordPress Site

Once installation is complete, navigate to your WordPress URL in a browser and log in using the admin credentials that Cloudron generated during installation. You can always retrieve these credentials from the Cloudron dashboard by clicking on the WordPress app entry and viewing its configuration details.

From the WordPress admin dashboard, work through the following initial configuration steps to get your site ready:

  • Set your site title and tagline under Settings β†’ General. While there, confirm that both the WordPress Address and Site Address fields display your full domain with https:// β€” this ensures all internal links and assets are served securely.
  • Configure permalinks under Settings β†’ Permalinks. Select your preferred URL structure (Post name is generally recommended for SEO) and click Save Changes to flush the rewrite rules. Skipping this step can cause 404 errors on post and page URLs.
  • Install a theme under Appearance β†’ Themes. The default WordPress theme is functional, but choosing a theme suited to your site type will give you a much stronger starting point for design and layout.
  • Install essential WordPress plugins as needed. Common starting points for a well-rounded setup include a caching plugin for performance (such as W3 Total Cache or WP Super Cache), an SEO plugin (such as Yoast SEO or Rank Math), a security plugin, and a contact form plugin. Install only what you genuinely need β€” keeping the plugin count lean improves both performance and security.
  • Create additional users under Users β†’ Add New if other people will be contributing to or managing the site. Always assign the minimum role necessary for each user’s responsibilities β€” avoid assigning the Administrator role unless it is truly required.

Step 7: Ongoing Maintenance and Backups

One of the most compelling advantages of running a self-hosted WordPress site through Cloudron is that the most time-consuming maintenance tasks are handled for you automatically:

  • Automatic updates β€” Cloudron monitors for new versions of the WordPress Developer package and can apply updates automatically or notify you when one is available, depending on your configured update policy. Updates are applied cleanly to the container without any manual intervention or risk of partial upgrades.
  • TLS certificate renewal β€” Let’s Encrypt SSL certificates are renewed automatically by Cloudron before they expire. No cron jobs, manual renewal commands, or Certbot configuration is required on your part.
  • Automated backups β€” if you configured a backup destination in Step 4, Cloudron automatically backs up your entire WordPress instance β€” including all files, the database, uploaded media, and app configuration β€” on the schedule you defined. Periodically verify that backups are completing successfully by reviewing the Backups tab in your Cloudron dashboard. A backup that silently fails provides no protection at all.
  • Resource monitoring β€” the Cloudron dashboard displays real-time CPU usage, RAM consumption, and disk usage for each installed app. Review these metrics occasionally to identify resource trends and catch potential issues before they begin to affect site performance or availability.

βœ… Your self-hosted WordPress site is live and ready. You now have a secure, TLS-protected WordPress installation that is straightforward to maintain, automatically backed up, and entirely under your control β€” without the ongoing burden of managing raw server infrastructure by hand. Whether you are launching a personal blog, a business site, or a WordPress development environment, Cloudron gives you a reliable, production-ready foundation from day one.