If you would like to Setup LEMP Stack (Linux , Nginx , MySQL & PHP) on Ubuntu , Refer this Article
It will also guides you to setup WordPress website powered by Nginx HTTP Server. In this guide , We will learn How to setup Ghost in AWS.
What is Ghost?
Ghost is an open source publishing platform designed to create blogs, magazines, and news sites.A simple and flexible alternative to WordPress.
It includes a simple markdown editor with preview, theming, and SEO built-in to simplify editing.
Setting UP Ghost
Amazon offers a one click software deployment features along with the Operating system.We can launch an Instance which comes up with a tools such as WordPress , OpenVPN server etc.
But In this tutorial , We are going to deploy Ghost, Which is the combination of App and OS using the Lightsail service.
What is Lightsail?
If you don’t have much experience with Amazon WEb Services such as VPC , EC2 Instances , Load Balancers , Amazon Lightsail is the best and easy way to start.
It provides a quick and easy way to deploy and mange instances along with applications such as WordPress , LAMP stack , Drupal and much more.
This features is mainly for developers who want to setup a test project to run applications without having much knowledge on managing aws services and also to avoid spending time on installing software or frameworks.
To setup Ghost , Login to Lightsail Console
You should see the following page.
Click Create instance,
Choosing Instance Location
We have to choose the Instance location , For example , I chose Mumbai
Also You should choose the Availability Zone.
Choosing Instance Image
Now We have to choose the Operating system , From these two Platforms: Linux and Windows.
If you select Linux/Unix , and If you choose OS only ,You have the option to select one of the following operating systems.
But In this tutorial , As we are Deploying Ghost as a One click software deployment , We choose Apps + OS and then select Ghost
And Optionally You can add the shell scripts which will run while the instance boots up.
Under SSH Key pair manager , You can use exiting key pair Or you can create one If you want.
To create a New key pair for this instance , Click Create New
And Click Create ,
Type the name for the Key Pair and Download the .pem file.
Choosing Instance Plan
You can choose the Instance plan such as RAM , CPU and HardDisk based on your requirement.
Provide a name for the Instance , and then add tagging for grouping the resources.
At last , Click Create instance.
Once the Instance is Created and Running.
If you click the console icon , You will see the below error.
Lightsail asks us to give a couple of minutes before SSH into the Instance.
After a minute or two , If you click the Console icon again , You should be able login to the Instance.
Once you login to the instance and check what are the packages and services are installed using netstat command.
You can see that MySQL , Apache2 and Node are installed. These are the packages that should be available to run the Ghost.
Once the installation is completed , You can test your blog by pasting the public IP address into the browser.
You should see the following page.
Login to Ghost
Lets login to the admin panel of Ghost. The URL to access the Ghost admin panel is
The username and password can be obtained from using the below command in the instance.
Once you get the username and the password , Access the admin panel and you should get the following page.
Provide the username and password and click Sign in.
You will be taken to the Dashboard.
We have completed the installation of Ghost and we are able to access the Admin panel of Ghost.
You should consider pointing the IP Address to the Domain name and Configure the SSL to secure the Ghost.
We have successfully deployed Ghost on AWS using Lightsail service.
Hope this article helps you to setup Ghost at ease.Thanks for reading this article.
Please do check out my other publications.