Want a WordPress site in the cloud? Take a look at Amazon Web Services!
Amazon has been trying hard to entice the little shops and hobbyist into their digital doors too. A quick intro into Amazon Web Services (AWS) for those who may not be aware: Amazon has built and continues to build a massive secretive infrastructure. This infrastructure supports the largest marketplace on the planet and it’s accessible to you and me. Amazon has already put in the high cost of developing this and we are now able to host our WordPress sites in an elastic environment that can scale on demand as our site grows.
What we’ll discuss in this article
I will show you how to signup for AWS services, how to install a WordPress site using the AWS Marketplace, and of course how to access your WordPress site once it’s installed. We’ll also discuss the benefits of using AWS as a user and WordPress site administrator.
For the average WordPress user, free is the cost you’ll likely see thanks to AWS free tiers. As WordPress only requires: a host and a database like MariaDB. These requirements are met by Amazon Elastic Cloud Computing (EC2) and Amazon Managed Relational Database Service (RDS), both of which offer free tiers which is far more than enough for those starting out.
Now that we understand what we need and what it’s for, go over to AWS and setup a user account.
Once you’ve set yourself up with a user account and authenticated by phone, we can begin making our site.
Building our WordPress Site
Select the ‘Services ‘ menu item in the top left of the screen and then EC2 from the console window.
Select ‘Launch Instance’
Then select the ‘AWS Marketplace’ tab, type WordPress and then select the WordPress by Bitnami option. This should be the first option that appears in the list.
Select the t2.micro service, Review and Launch. The t2,micro tier is the AWS free tier for EC2 and can handle plenty more than most personal sites will need starting out.
Remember scaling happens auto-magically when it’s needed.
If everything looks good, go ahead and Launch on the next screen. Now you will see a dialog launched to create a key value pair. This will generate the .pem file which is a security certificate.
Keep this file. For our example, just enter myKey and download the key pair, which will download your .pem file.
Then Launch Instance!
.pem Defined in RFC’s 1421 through 1424, this is a container format that may include just the public certificate (such as with Apache installs, and CA certificate files /etc/ssl/certs), or may include an entire certificate chain including public key, private key, and root certificates. Confusingly, it may also encode a CSR (e.g. as used here) as the PKCS10 format can be translated into PEM.
The name is from Privacy Enhanced Mail (PEM), a failed method for secure email but the container format it used lives on, and is a base64 translation of the x509 ASN.1 keys.
After the launch is complete you’ll be brought to a launch status screen. If all went well, at the bottom-right select view instances.In the next window, called our instance pane we can see all the instances of EC2 we have. Specifically we can see our t2.micro instance, and it may still have a Status Check of ‘Initializing’. Once it says ‘running’ select it and from the Actions menu, select Instance Settings, then select Get System Log.
Inside the log scroll down until you see a section surrounded like this:
This is our password, save this along with your .PEM file. This password is what you will use to log into your WordPress Site. For now close this window. If you notice also in the description pane near the bottom of the page is our public IP.
Navigate your browser to that public IP, mine as shown for this instance is IPv4 Public IP: 184.108.40.206.
Now to start administering your site, just add ‘/wp-admin’ to the end public IP address. Enter your credentials, your username is ‘user’ your first time and your password is the password from the system log you copied down a couple of steps back.
Congratulations! You now have setup your own WordPress site, you are ready to share your ideas with the world, happy posting!