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;
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
- sudo npm cache clean -f
- sudo npm install -g n
- sudo n 10.13.0
next make a director and install ghost
- npm install ghost-cli@latest -g
- mkdir new-blog && cd new-blog
- ghost install local
- 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.
- brew install httrack
- 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.