WPCloud Deploy Documentation

Introduction, Installation & Quick Start Guide

Table Of Contents

  1. Introduction
  2. Quick Start
  3. Next Steps
  4. Notes
  5. Important Concepts
  6. Other Resources

Note: If you are a first time user of WPCloudDeploy, one of the services we offer is a FREE 1-on-1 walk-through so that you can get up and running fast!  We’ll help you install the plugin, configure your ssh keys and get your first server deployed.  Just open a support ticket to request this service!


WPCloudDeploy is a WordPress plugin that allows you to create WordPress servers at cloud server providers such as DigitalOcean, Linode, AWS and others.

But it does so much more than just create servers.  Once a server is created you can:

  • Add multiple WordPress sites
  • Use a centralized dashboard to manage multiple sites and multiple servers across multiple cloud server providers
  • Perform WordPress specific actions on sites
  • Gain advanced functions such as the ability to push sites between servers, sync entire servers and more

It is extensible with hooks and filters that allow developers to add their own cloud server providers.

Additionally, products such Advanced Custom Fields (ACF) and Admin Columns Pro can be used to customize the data that appear for each server and site.

And, because it’s a WordPress plugin developers can integrate data from other popular WordPress plugins or send data from it to those other plugins.  This allows developers and admins to create a centralized dashboard that pulls together data from other plugins and combine it with their server and site data – something that isn’t possible or would be quite difficult with SAAS products.

One of the funky things with a plugin such as this one though is that you need an existing WordPress site in order to use it.  Which makes it a little bit meta!  You can learn more about this on the Requirements Page.

Quick Start

To get started, you need to:

  1. Make sure you have at least one SSH public/private key pair at your cloud provider (Digital Ocean, Linode etc.)  Click here if you need instructions for generating SSH key pairs.
  2. Upload and activate the plugin to an existing WordPress Site or deploy a pre-built image at DigitalOcean.  We strongly recommend that you use the DigitalOcean image since it is already pre-configured with all the correct webserver settings.
  3. Configure a connection to your Cloud Server provider
  4. Install your first server
  5. Install your first site.

These steps are explained in more detail below.  If you run into any issues or errors, check out this troubleshooting document to see if it helps.  Otherwise just contact our tech support team and we’ll jump in to get you all squared away.

And, if you’re a new customer, we will be happy to walk you through this entire process with a 1-on-1 web/screen sharing session.  Or, we can perform the installation for free for you. Just ask us and we’ll make an appointment.

Installation and Activation

If you are using our pre-built DigitalOcean image you can skip this section.

Before proceeding with installation, please read the full requirements here.

Installing the plugin is performed just like any other WordPress plugin:

  1. Download the .zip file from our site
  2. Go to the WordPress Plugins menu
  3. Click the Add New button.
  4. Click the Upload Plugin button at the top of the Add Plugins page.
  5. Click the Choose File button, navigate to the .zip file from step 1 and then click the Install Now button.
  6. After the upload is complete, click the Activate Button.
  7. You should now see an alert at the top of the screen indicating the the METABOX.io plugin needs to be installed.  You should go ahead and click on the link to install it. Then make sure it gets activated!

At this point the plugin is installed and ready to connect to DigitalOcean.  But first though, you should add an encryption key to wp-config.php.

Encryption Keys

Once the plugin is installed and activated you should add an encryption key to your wp-config.php file.  If you don’t do this now, api keys, private keys and other sensitive data will be stored without encryption in your database.  If you add the key later you will have to re-enter your api keys and private key information.

define('WPCD_ENCRYPTION_KEY', 'your very long encryption key goes here');

Note: All the possible wp-config.php settings are documented on this page.

Next Steps

1. Connect To Your Cloud Server Provider

For this section, we’ll assume you’re using DigitalOcean as your cloud server provider – if you’re using a different provider and have installed and activated the plugin for them, just substitute your provider for DigitalOcean in the instructions below:

  1. Make sure you have at least one SSH key pair installed at Digital Ocean.  If you don’t have a key pair, use this guide to learn how to generate one.  And this one explains how to upload your public key to the Digital Ocean control panel.
    1. It is very important that you do this BEFORE you proceed to the next step.  The reason is that once you add your API key to our plugin, it will attempt to retrieve your SSH keys and it will cache them.  If you then proceed to change or add new keys, you’ll need to wait until the cache times out (around 15 minutes) before you’ll be able to see the new keys in WPCloudDeploy.
  2. Create an API key at Digital Ocean – you can do this inside your DigitalOcean dashboard.
  3. Go to the settings screen under the WPCloudDeploy menu option
  4. Click on the Cloud Providers tab and fill out the API Key field then click the save button at the bottom of the screen.
  5. Now, the SSH key dropdown will be filled in with the keys you uploaded to DigitalOcean.  Select one of them.  If you do not see this dropdown, you can try one of the following:
    1. Click the SAVE button again – sometimes you just need to query the cloud provider a second time (some of them perform a sort of micro-caching)
    2. Use the CLEAR CACHE button at the bottom of settings screen for the provider
    3. Wait 15 minutes and try again – see the first step above to understand why this might work.
  6. Add the private key portion to the PRIVATE SSH KEY box.  It is very very important that you make sure the private key data matches the public key you selected in the prior step.  View important notes about private ssh keys.
  7. Add your private key password if any.
  8. Save the settings.

Now you’re ready to quickly run through the steps to get your first server and site up and running.

2. Create Your First Server

To create your first server:

  2. Click the DEPLOY A NEW WORDPRESS SERVER at the top of the screen.
  3. Follow the instructions on the screen and then go get a cup of coffee – it’ll take about 20 minutes for the server to be deployed.

3. Install Your First Site

To create your first site after creating your first server:

  2. Click the INSTALL WORDPRESS button in the Server Actions column.
  3. This should be at most a five minute process.

Fine Tune Your PHP & WEB SERVER Configuration

WPCD depends on using SSH to connect to your servers. But the PHP and Web Server processes have short timeouts that need to be increased.  It they’re not increased then the amount of time that a connection to one of your managed servers can remain open will be 30 seconds or less – not enough time to handle certain longer running tasks.

We have added instructions to the WPCLOUDDEPLOY->SETTINGS screen to help you increase your timeouts on PHP and various web servers.  Please make sure you review these and update your server configurations.

Firewalls & Proxies

If you place your WPCD server behind a proxy such as CloudFlare then you need to make sure that the following folders are white-listed so that they can be accessed by your new server:


This folder just contains just text files in there that happen to contain our bash scripts.  These scripts are part of what makes stuff happen – such as installing WordPress on your server.

If you run a firewall plugin on your WPCD server you should also make sure the folder is always available to the outside world (or at least every server IP you’re managing).

Rest Endpoints

You will also need to white-list the call-back endpoints – they all start with or contain /wp-json/wordpress-appFor this, we would recommend that you whitelist your individual server ip addresses instead of leaving it open.

Backup Your WPCD Site

WPCloudDeploy is a plugin that runs on a regular WP site.  So, to preserve your data you should backup and manage the WPCD site just like you would any other WordPress site.  So, now that you have your first server and site up and running, now would be a good time to install a backup plugin and configure it to backup at least once per day and send the backup to SECURE off-site location.


You need to install the plugin in an existing WordPress site.  However, we recommend that you do NOT install it on sites hosted at places like WPEngine since these services block access to the standard ssh ports.  Need a new site to install this on?  This document outlines some options.

Important Concepts

Loosely Coupled Connection To Server

The WPCloudDeploy plugin is in a “loosely coupled” connection to your cloud server.  This means that you or your cloud provider can make changes to the server without the WPCloudDeploy plugin knowing about it.  It is important that you do not do this unless instructed to by one of our support staff.

Still, stuff happens and the plugin can sometimes recover.  Some examples where recovery is possible are:

  • You or the cloud provider turns off the server but WPCloudDeploy still thinks its turned on.  The server list will still show the server as active.  Once the server is turned back on, it will be back in sync with the plugin.
  • The cloud provider can change the IP address of the server.  You can fix this by going to the server screen and updating the IP address there.  If you do not do this all actions the plugin tries will fail.


As we communicate with the server to deploy new sites and perform other tasks, we sometimes need to connect back into the plugin’s site to update status and error data.  This means that you cannot install it on a local server.  The server must be accessible via the internet and the REST API must not be blocked by your firewalls – learn more at the bottom of our requirements page.

Other Resources

We have a couple of articles that help you set up your new server and site after they have been deployed:



Copyright © WPCloudDeploy 2019-2022