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!
WPCloud Deploy 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:
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 that includes 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.
The WPCloud Deploy 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 WPCloud Deploy 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:
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 – there’s a little more information about this at the bottom of our requirements page.
To get started, you need to:
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. Just ask us and we’ll make an appointment.
Before proceeding with installation, please read the full requirements here.
Installing the plugin is performed just like any other WordPress plugin:
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.
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.
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:
Now you’re ready to quickly run through the steps to get your first server and site up and running.
To create your first server:
To create your first site after creating your first server:
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.
If you place your WPCD server behind a proxy such as CloudFlare then you need to make sure that the
folder is whitelisted so that your new servers can access it. But it’s probably easier to just allow all access to it – it’s 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 that folder is always available to the outside world (or at least every server IP you’re managing).
You will also need to white-list the call-back endpoints- they all start with or contain /wp-json/wordpress-app. For this, we would recommend that you whitelist your individual server ip addresses instead of leaving it open.
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.
We have a couple of articles that help you set up your new server and site after they have been deployed: