After discovering Chuck Keith (aka Network Chuck) as I mentioned in my last post, I created an AWS account and began playing around with the AWS console and services. Now I was ready to address my wife’s actual request: to stand up website for her to create her food blog on. As much as I loved Network Chuck’s content, he didn’t specifically address what I needed to accomplish. I ended up going back to my old friend Google and stumbled upon another REALLY AWESOME home lab content creator SpaceRex, aka Will Yarborough. Will has some amazing content and if you are starting off on your own home lab journey, I highly recommend his YouTube channel.
My first actual AWS project was to set up a WordPress web site on AWS using Amazon LightSail. WordPress is the world’s number one “content management systems” or CMS for short. A CMS is software that can be used for many purposes: web sites, blogs, e-commerce sites, portfolios, etc. It is designed to be accessed from the web, and it eliminates the need to learn HTML coding. A CMS needs to reside on a server, either in your home, in a data center or in the cloud. WordPress is the tool we settled on to host our blogs/websites. Lee-Ann is getting really good at creating content in WordPress.
Will’s video above is pretty comprehensive. He covers how to log into AWS, how to spin up a LightSail server with WordPress pre-installed and how to update the WordPress Plugins. If you are trying this project, you will need to find some a company to buy your domain name from (a domain name registrar). I don’t recommend AWS as they are pretty expensive. There are other domain name registrars that are all pretty inexpensive and provide good service (GoDaddy, Namecheap, etc.), but my favorite is Cloudflare. I also use Cloudflare for other advanced networking services (zero trust network access, tunnels, website caching), which I will explain in a future post. You won’t go wrong if you decide to use Cloudflare for your domain name registrar, as it makes using their services even easier. Once you have a domain name, Will shows you an example of how to point your AWS server to the DNS servers of your registrar. His example is Google, but if you search around you will find instructions on how to do this for virtually all domain name registrars. Will doesn’t go into HOW to use WordPress, and quite frankly neither will I. Its not hard, by any means, but there is definitely a bit of a learning curve, and the features in WordPress change quite frequently as it is under active development. Anything I write today will be obsolete in a few months.
A few words of caution around WordPress. Because most of the web runs on it, it is also one of the MOST hacked software packages out there. You cannot just stand up WordPress and start creating content. I tried that on my first go at WordPress on AWS, and that instance was hacked pretty quickly. Thankfully I didn’t lose any data because I was still trying to learn how to use WordPress. WordPress takes a bit of configuration and a number of plugins to provide you with adequate security. WordPress also takes a bit of tweaking to make it adequately responsive for your users. As a result, I have become conversant with web application firewalls, page caching (Cloudflare), database object caching (Redis), content delivery networks, among other topics. I handle all of this for my wife and let her focus on her content. If you don’t want to dive into these topics and be responsible for this on your own, you will be better served using a managed hosting service that does all of this for you. Examples include Hostinger, SiteGround, and Kinsta to name a few. I have no experience with these services, so I can’t recommend a specific provider.

My second AWS project was a bit more complex. I decided to follow one of Will’s videos and setup Nextcloud on AWS. Nextcloud is a direct competitor to Google cloud, except you have to provide your own hardware or cloud server to run it. Once it is set up, it can literally replace all of Google’s cloud services: cloud storage, Google docs, Google calendar, etc. Its a very cool, open source software package. I followed this video:
Nextcloud is a really interesting product. It works really well and there is a desktop application that you can use with it to synchronize files from your PC to your Nexcloud instance, much like using Drop Box or Onedrive. There are also applications for iphone and android, so you can access your files from anywhere, synchronize your phone to Nextcloud, and automatically upload all the pictures you take to Nextcloud.
I used Nexcloud on AWS for quite a long time, and even extended it to my wife and children, who also enjoyed it. The only reason I don’t use it anymore is because I invested in a Synology NAS and Synology does all the same stuff, without requiring me to pay AWS for a server and storage.
One of the last projects I completed on AWS, that I still use is backing up my NAS machines to Amazon S3 and Amazon Glacier. I started out using S3 with intelligent tiering, but when I switched to a Synology NAS, I made the switch to Glacier. Originally with my Raspberry Pi NAS running Debian/Openmediavault, I installed and used Rclone following this awesome video. I then created a BASH script that was triggered by a cron job every morning at 1am to backup all my data to the cloud.
Once I switched to a Synology for my NAS, Synology has an awesome built in utility to back up to cloud. Now I keep three copies of all my important data, following the 3,2,1 backup rule: I have three copies of the data, on two different types of media, and one copy located off site, so I don’t lose everything if my home suffers a tragedy.