Creating a blog.

Published: Feb 4, 2019 by Isaac Johnson

I’ve honestly been thinking through the many ways one could host a blog. I tried a few methods.

Azure Hosted Wordpress

I used the standard Wordpress template with minimum settings and had the whole thing up in about 4 minutes.  I was even able to set up SSL.

The performance was pretty slow, but I had a containerized Wordpress site going!

It takes a while for the Resource Costs to update.  My goal being to run a meager site for less than 10/month.  As you can see, it’s just an Azure App service, minimum Azure Database (mySQL on Basic 2 core /50Gb) and the App Service Plan (ie. autoscaling policy) After a couple days i checked back.

In three days we’ve racked up $7 already!

For reference, my own meager s3 hosted website is about $3 month to host with a custom domain and SSL!

Luckily Azure makes it easy to delete an entire resource group easy;

in Resource Groups, you can use the elipse to select "Delete resource group"

Azure CDN backed self-hosted

I use a Synology NAS.  Of the many things it can do is host a wordpress blog.  I then backed it up with a CDN (http://isaac.azureedge.net/).  However the URLs were not relative creating a bit of a navigation nightmare. I also realized that even if I sorted out navigation, setting up SSL would be a challenge (getting a DNS on the Azure CDN is a bit of a process).

Static hosting a ghost blog

For some time I’ve had this domain hosted as an s3 backed static site.  It’s quite fast and runs me about 3 bucks a month.  Is there a way I can create a decent looking blog that’s secure?

node based ghost

first we need to get node up to a version ghost likes

  1. sudo npm cache clean -f
  2. sudo npm install -g n
  3. sudo n 10.13.0

next make a director and install ghost

  1. npm install ghost-cli@latest -g
  2. mkdir new-blog && cd new-blog
  3. ghost install local
  4. npm start

Once you’ve set up your blog, you could try and push it to an Azure Web App (but it kept crashing on database access on me)

the easier method and most secure is to install httrack.

  1. brew install httrack
  2. httrack

you’ll set httrack to mirror http://localhost:2368.

This will create a local website, so your last step is to follow any guide to create an s3 backed website with Route 53 hosted DNS.  I then merely copied the contents over.

Next steps:

automate the whole thing with Azure DevOps.

blog

Have something to add? Feedback? You can use the feedback form

Isaac Johnson

Isaac Johnson

Cloud Solutions Architect

Isaac is a CSA and DevOps engineer who focuses on cloud migrations and devops processes. He also is a dad to three wonderful daughters (hence the references to Princess King sprinkled throughout the blog).

Theme built by C.S. Rhymes