Looking for an easy way to migrate WordPress to RunCloud?
I recently decided to move all of my WordPress sites from SiteGround to a Vultr High-Frequency server controlled by RunCloud. I still like SiteGround, I just enjoy tinkering and saving money, and RunCloud + Vultr lets me do that.
Of course, that came with a dilemma. How do I easily migrate those WordPress sites from my shared hosting to my new spiffy RunCloud dashboard? After some digging, I came up with the easiest method using the free Migrate Guru plugin and its FTP option.
In this article, I’ll show you step-by-step how to migrate a WordPress site to RunCloud using the Migrate Guru plugin. I’ll cover every single step, from setting up the RunCloud server to testing your site before switching over your DNS.
The Basic Process to Migrate WordPress to RunCloud
Ok, I’m going to cover every step in detail below (with screenshots). But if you’re wondering how all of this works, here’s the high-level view of what you’ll need to do to move your sites:
- Sign up at RunCloud (if you haven’t do so already)
- Sign up for cloud hosting from your preferred provider – I like DigitalOcean or Vultr. I’m using Vultr High-Frequency, personally.
- Provision a new server at RunCloud.
- Create a new WordPress web application at RunCloud. This is the destination to which you’ll migrate your WordPress site.
- Install the Migrate Guru plugin on your existing WordPress site and enter the details of your WordPress web application at RunCloud (from the previous step).
- …wait for Migrate Guru to do its thing. This might take some time.
- Use SkipDNS to make sure that the migrated version of your site is working.
- Switch your DNS to your RunCloud server once you’ve verified that everything is working.
- Perform some other domain housekeeping steps via the RunCloud dashboard.
Trust me – it’s not too painful! Let’s go through it…
How to Migrate a WordPress Site to RunCloud for Free
Note – if you’ve already set up your RunCloud server and are just looking for the part on how to migrate WordPress to RunCloud, you might want to skip ahead to step #4. The first three steps just deal with spinning up your server.
1. Sign Up at RunCloud
If you haven’t already, head to RunCloud and sign up for an account. You can get a free trial to test it out. After that, there’s a limited free plan (not good, because there’s no HTTPS) and the paid plans start at just $8 per month.
These are my affiliate links – I’ll get $5 if you sign up through my link, but you won’t have to pay anything extra.
2. Sign Up for Cloud Hosting and Generate API Key
Once you have your RunCloud account, you need to create a new server to house your WordPress site.
Personally, I recommend two providers:
I’m using both at the moment. I use Vultr High-Frequency for my production sites and I also have a DigitalOcean server I use to play around with stuff. Both have been reliable and speedy.
Personally, I find the DigitalOcean interface to be much nicer than Vultr’s, though both are usable enough. RunCloud also has API integrations with both, which makes it super easy to spin up a new server.
To begin, you’ll need to go to a provider and create an account. If you use my affiliate links, you can get a free credit for your first month (and I’ll get a little kickback, of course):
- DigitalOcean – get a $100 credit for your first 60 days, which means your first two months are free in most situations.
- Vultr – get a $100 credit for your first 30 days, which means your first month is free.
Once you’ve signed up at either service, you’ll first need to add a payment method (e.g. your credit card).
Then, you’ll need to generate an API key for RunCloud to use to create and set up your server. To do that for your chosen service, you can follow the instructions below for both providers.
At DigitalOcean, you can do that by going to this page and clicking the Generate New Token button. Make sure to give the token Read and Write access and leave this window open because DigitalOcean will only show it once (and you’ll need it in the next step):
If you accidentally lose your key, you can always just create a new one.
At Vultr, you can find your API key by going to this page. Make sure to also click the button to Allow App IPv4:
3. Create a New Server With RunCloud and Your API Key
Once you have the API key for your chosen cloud hosting provider, you’re ready to have RunCloud create and provision a server for you.
To do this, go to the Servers tab in your RunCloud dashboard and click Connect a new server:
Then, choose your provider from the list. E.g. DigitalOcean or Vultr.
In the Provision Type section that appears after selecting a provider, select Build Server. Then, you’ll see a Keys option below that. Click the Add new key button:
In the popup, choose the service and paste in the API key that you got in the previous step. Give it a label to help you remember it and then click Add API Key:
Now, you can use the Keys drop-down to select the key that you just added by looking for its label. Once you’ve done that, click Build server:
Now, you can choose your server details. I recommend the following:
- OS Image – Ubuntu 18.04 (LTS) x64
- Data Center Region – choose the location that’s closest to your target audience (or the bulk of your target audience).
- Select an instance – if you’re just getting started, you can just choose the $5 plan. It’s easy to scale up later, but harder to scale down. For that reason, I recommend starting with the small one first.
- Server Name – enter a name to help you remember this server.
Then, check the box and click Add this server:
Now, wait a couple of minutes while RunCloud sets everything up for you. Then, you should see your server dashboard.
Mine already has a few sites because I’ve set it up – but yours should be empty:
4. Install WordPress at RunCloud
Next, you need to create a blank WordPress website at RunCloud. This will house the site that you want to migrate.
To install WordPress at RunCloud, go to the Web Application tab in your server dashboard and then click Create Web App:
Choose the 1 Click WordPress option:
Then, enter the details:
- Web Application Name – a name to help you remember this site.
- Domain name – enter the domain name of the site that you want to migrate. For example, if your current site is coolsite.com, then enter coolsite.com
- Web Application Owner – leave as default.
- User – leave as default (which should be “runcloud” – you can always change it later).
- PHP Version – PHP 7.4 (or default).
- Web Application Stack – I recommend the Native NGINX stack as it’s the fastest. However, if you absolutely need to use the .htaccess file, you should choose the NGINX + Apache2 Hybrid.
- WordPress (title, username, etc) – just fill with dummy information. Migrate Guru will overwrite this in the next step so none of this information is permanent.
- Database – leave as default.
Once you install WordPress, RunCloud should take you to the Web Application Summary for your new WordPress site:
Now, it’s time to migrate your site.
5. Install and Run Migrate Guru on Your Existing Site
Note – I recommend backing up before starting this step, just in case.
Now, go to the WordPress site at your existing host. This is the existing site that has all of your content, etc.
Then, go to Plugins → Add New and install the free Migrate Guru plugin from WordPress.org.
Once you’ve activated the plugin, go to the Migrate Guru tab in your existing site’s WordPress dashboard. Enter your email and click Migrate Site:
For the migration method, select the FTP option on the next screen:
Now, you’ll need to fill in some details. Below, I’ll show you where to find all of this information:
- Destination Site URL – the URL of your site – it should be the same as the site you’re migrating. For example, I’m migrating troundup.com, so I would enter troundup.com
- FTP Type – SFTP.
- Destination Server IP/FTP Address – the IP address of your server (you can get this from the Server Summary in RunCloud)
- Port – 22
- FTP Username – runcloud
- FTP Password – you can get this from the System User tab in your server dashboard (I’ll show you how below).
- Directory Path – you can get this from the Web Application Summary in RunCloud – I’ll show you below.
Then, click Migrate to start the process:
Here’s how to find all of that information:
Destination Server IP:
Open your server dashboard and look for the IP in the Summary tab.
Open your server dashboard and go to the System User tab. Then, click to change the password for the RunCloud user:
Enter the password that you want to use. Then, also enter the password that you choose in the Migrate Guru settings:
Open the web application dashboard for the WordPress site that you created at RunCloud. Then, look for the Root Path in the Summary tab:
6. Wait for Migrate Guru to Work
Once you enter the details and click Migrate, Migrate Guru will start moving your site:
If you have a large WordPress site, the migration process is going to take some time. There’s no further manual action required, so you can feel free to step away for a bit. The page will update when you’re done and you’ll also receive an email when it finishes.
I would say small sites can migrate in under 10 minutes, but a large site might take more than that.
7. Use SkipDNS to Make Sure Your Migrated Site Works
At this point, your site should be successfully migrated to its new location on your RunCloud-powered cloud hosting.
However, it’s hard to test this because if you visit your site, it’s going to still show the version at your existing host since you haven’t changed your domain’s DNS settings yet.
One solution is to edit your hosts file so that you can force your computer to show you the new version. You can do that…but instead, I recommend this really neat service called SkipDNS.
SkipDNS does the same thing – it just eliminates the need to manually edit your hosts file.
To use it, go to SkipDNS and enter the following information:
- Domain or URL – the URL to your WordPress site.
- Server Address – the IP address of your cloud server (you can find the Server Address in the Server Summary at RunCloud.):
Once you enter this information, SkipDNS will give you a link to preview your site. The important thing is that you’re previewing how your site looks at your new RunCloud-powered cloud hosting.
Ideally, it should look identical to the version of your site at your existing hosting. That’s what you want! You can click around to different pages to make sure everything is working.
Once you’ve verified that the migration worked properly, the next step is to update your domain’s nameservers to point to your new cloud hosting account.
8. Change Your DNS to Point to Your New Site
To point your domain name to your RunCloud server, you need to add two A records to your domain’s DNS settings. Typically, you’ll manage your domain’s DNS via your domain registrar, although I personally use Cloudflare’s free DNS service (though I don’t use the CDN part – just the DNS).
You’ll need to add the A records to point to your server’s IP address, which you can get from your RunCloud dashboard.
Here are the two records that you’ll want to add:
|A||@||[Your Server IP]|
|A||www||[Your Server IP]|
Note – the “@” symbol just acts as a placeholder for your main domain name.
Here’s what it might look like:
Once you save your changes, it might take a few hours for your DNS changes to propagate (though it’s usually much faster).
9. Add Both www and non-www Domains at RunCloud (and Other Domain Housekeeping)
To finish things out, you need to add both the
non-www versions of your domain name at RunCloud. You’ll have already added one version when you installed WordPress, but now you’ll need to add the other.
To do this, open your application’s dashboard in your RunCloud dashboard and go to the Domain Name tab. Then, add the other version of your domain name.
Here’s what it might look like – you can see both the versions in the screenshot below:
At this point, you also might want to do a few other housekeeping steps related to your domain name.
First off, you can go to the SSL/TLS tab to install an SSL certificate and enable HTTPS.
Second, you can go to the NGINX Config tab (if using the all Nginx tech stack) and use one of the pre-configured options to automatically redirect all www traffic to non-www (or vice versa).
And that’s it! You just successfully migrated your first WordPress site to RunCloud.
Migrate WordPress to RunCloud Today
At the time that I’m writing this post, I’ve been using RunCloud for about two months and have been super happy so far.
It’s quite affordable and my site’s load times have been excellent and reliable, with zero downtime so far.
If you’ve been on the fence, follow this guide to migrate WordPress to RunCloud today. And if you found this guide useful, I’d love it if you used my affiliate links when you sign up to RunCloud, DigitalOcean, or Vultr. There’s no extra cost for you, and you’ll even get some free credit in the case of DigitalOcean and Vultr. It also helps support me to continue creating this type of content.
Still have any questions about how to move WordPress to RunCloud? Leave a comment and I’ll try to help out.
Colin Newcomer is a freelance writer for hire with a background in SEO and affiliate marketing. He helps clients grow their web visibility by writing primarily about digital marketing, WordPress, and B2B topics.