Sometimes you want to say something online that is best written down but is a bit longer than what Twitter allows. You have something that you learned that you want to share or maybe you just want to get something off your chest.

That's where having you own blog comes in. I created this blog a few months ago and it costs me $5 a month. It's using Ghost for the front end and runs on Ubuntu server. If that sounds unfamiliar and complicated, keep reading. I'll do my best to make it as simple as possible.

Buying a domain

The first thing you need to do is to buy a domain name. Domain names vary massively in price depending on whether it is a .com or .net or .info etc. For example, technews.xyz on Namecheap.com is available for $1455 but technews.life is only $3.

I bought vinodhsblog.co.za from Afrihost.com for around $10. Once you've found and bought a domain name that matches your budget, the next step is to register on DigitalOcean.com.

Installing Ghost

Once you've registered on DigitalOcean, the first step is to click the big green "Create" button and select "Droplets" from the dropdown menu.

At the "Choose an Image" section, select "Marketplace" and search for Ghost. select "Ghost on Ubuntu 18.04". Below that, make sure "Shared CPU" is selected with the "$5 a month" option.

The rest of the options after that can remain as is except for "Authentication". Choose the option that suits you best and then click on the "Create Droplet" button on the bottom of the page.

It will take a few seconds and then your brand new Ubuntu server running Ghost will go live.

Click on the 3 dots on the right next to the newly created droplet and choose the "Add Domain" option.  

Type in the new domain name that you bought earlier and click on the "Add Domain" button.

This will the then link the IP address of your Ubuntu server to the you custom domain name. This will then allow visitors to just go to "technews.life" to reach your blog.

Please note that you must also do this with whoever your domain registrar is. Meaning that if you bought "technews.life' from Namecheap.com. then you need to get into your Namecheap.com account settings page for your domain and edit the A record to point to the IP address of your server. This process can take up to 48 hours to propagate but normally happens quite quickly.

While you wait for the domain name to get linked to your server's IP address, you can click on the three dots next to your droplet and choose the "Access Console" option. This will allow you to login to your server and finish up the Ghost installation. You will require your authentication credentials that you created earlier to login and then it's just a simple matter of following the wizard.

You will be asked to provide the URL of your domain and your email address. This email is for the creation of a certificate to allow for SSL (https) on your blog. Once you've completed the wizard and got the message that "Ghost was installed successfully!", you can then access your blog via a web browser and login. You can then create your admin account and start posting articles.

There's many options with regards to customizing Ghost. You can obviously give your blog a title and add a logo but you can also add a theme to completely change the look of your blog.  

To write your first article, go to the left side of your blog's settings page and choose "Posts" and click on the "+" icon.

This is the main process of setting up a self hosted Ghost blog on DigitalOcean. There's many other things that you can do after this like adding an option for subscriptions, email, Google Analytics tracking, Google Adsense etc.

Ghost.org should help you find everything that you need on getting your blog customized and working exactly the way you want it.

Hopefully this short tutorial can help you get started with Ghost and show you that running a website isn't that difficult or expensive. Happy blogging!