The website unionchurchss.org was hosted on InMotion Hosting. According to https://whois.domaintools.com/unionchurchss.org, there were "344 other sites hosted on this server":
My first step was to use FTP to download WordPress source code and content files hosted on the InMotion Hosting server. I went to my cPanel account at https://secure261.inmotionhosting.com:2083/ to obtain my FTP credentials:
This was the first screen after a successful cPanel login:
I scrolled down to find the FTP Accounts link:
I found the FTP Username Account that I needed to connect to the server using FTP:
The information above does not specify Host nor the password to connect via FTP. But I found the password from my records of when I created the InMotion Hosting account. For the Host value, I could use either 18.104.22.168 (the shared IP address) or secure261.inmotionhosting.com. That was all I needed to connect to the server using FTP via FileZilla:
I clicked OK to the Unknown certificate pop-up message:
My WordPress files on the server were displayed under the /unionchurchss.org folder:
20406 files were transferred successfully:
The process resulted in 310 failed transfers:
All of the failed transfers are from this directory: unionchurchss.org\wp-content\plugins\boldgrid-backup-premium\vendor\google\apiclient-services\src\Google\Service\. I could safely ignore those failed transfers because that was not going to affect what I needed for the functionality of my website.
The 20,406 downloaded files, together have a size of 5.15 GB:
My next step was to download the MySQL database. From cPanel, I clicked the phpMyAdmin link:
That took me to https://secure261.inmotionhosting.com:2083/cpsess9515791293/3rdparty/phpMyAdmin/index.php, where my database was listed as unionc10_wp96857:
This is the list of tables in the database:
I clicked the Databases tab and after that, I clicked the database that I wanted to export:
Then I clicked the Export tab:
I used the Quick - display only the minimal options export method and SQL as the output format. Then I clicked Export:
The database was downloaded successfully as a .sql file. Its size was 5.37 MB:
I visited https://digitalocean.com and from my account, I clicked Create a Team:
I provided the new team information and clicked Continue:
A verification link was sent to the email address I provided:
I received a welcome email:
I received a second email with a link to verify my email:
Clicking the link to verify my email address took me to the Add Payment Method section, where I provided my credit card information.
The last step was optional and I decided to skip it for now:
I was charged $1 as a pre-authorization "hold" charge on my card used to verify my card, which will be released within a day or two:
I visited https://marketplace.digitalocean.com/apps/wordpress and clicked Create WordPress Droplet:
I chose Toronto as the Region:
I scrolled down and in the Choose an image section, I added a MySQL Managed Database for an additional $15.00/month:
I scrolled down and in the CPU options section, I chose Regular Disk type: SSD and $6 /mo | $0.009 /hour (1 GB / 1 CPU | 25 GB SSD Disk | 1000 GB transfer):
I scrolled down to the Choose Authentication Method section and chose Password - Connect to your Droplet as the "root" user via password, where I created my root password:
I enabled backups for an additional $1.20/month because I was going to production, and gave my Droplet an identifying name that I will remember it by: unionchurchss.org. The price will be $22.20/month or $0.033/hour. Finally, I clicked Create Droplet:
It took a few minutes for the new Droplet and MySQL Managed Database to be created. When the creation was completed, I saw both listed as resources:
In the Settings section, I updated the project details:
Now I see my project with proper descriptions:
Go to the new Droplet and click Graphs. Notice that there is a message about an upgrade available for additional metrics and alerting:
Without the upgrade, only three metrics are available: Bandwidth, CPU Usage and Disk I/O.
I used PuTTY to log in to my Droplet:
After clicking Open, this pop-up security alert appeared:
I clicked Accept. Then I connected as root:
Provide root password to login:
This was the initial output after a successful login:
Configure domain name and LetsEncrypt to activate HTTPS (part 1 of 3):
Configure domain name and LetsEncrypt to activate HTTPS (part 2 of 3):
Configure domain name and LetsEncrypt to activate HTTPS (part 3 of 3):
I installed and enabled the metrics agent using curl -sSL https://repos.insights.digitalocean.com/install.sh | sudo bash
The new metrics Load (1/5/15), Memory and Disk Usage were added.
New metrics part 1 of 3:
New metrics part 2 of 3:
New metrics part 3 of 3:
Use cd /var/www/, adduser unionchurchss, usermod -aG sudo unionchurchssand chown -R unionchurchss:unionchurchss html to create user, add it to the sudo group, and assign new user as owner of directory where WordPress files are placed:
I renamed the html directory to htmlBACKUP and created a new html, assigning proper directory owner and group to this new directory that will host the WordPress files.
I connected to FTP from FileZilla using 22.214.171.124 as Host, with the username I created, with port 22.
At this point, /var/www/html/ was empty because that was the new folder I created in the previous steps. I uploaded to /var/www/html/ the WordPress source code and content that I downloaded from InMotion Hosting (the 20,406 files with a total size of 5.15 GB, shown in initial steps of this post):
I do not understand why 20,463 files were transferred. I was expecting a transfer of 20,406 files because that was the number that I had at C:\Users\jmont\Dropbox\unionchurchofsansalvador\unionchurchss.org\inMotionHosting\unionchurchss.org\. A possible explanation that I can think of is that maybe some files were counted more than once when a network error did not allow them to be uploaded, and FileZilla tried again. Maybe there was a bug in the FileZilla counter that made the same file to be counted more than once. I will not worry about it and assume that /var/www/html/ has all 20,406 files that I need, nothing less and nothing more.
I had to interrupt the migration process because I encountered incompatibility issues with PHP versions for the website. I needed to think carefully about my upgrade and server migration strategy. But I hope the idea was clear. The next steps on the new server would be to load the MySQL database, complete the Apache configurations, and finally changing the DNS settings for the website and email to point to the new server.