A step-by-step guide to setup Joomla website on Lightsail powered by AWS.
A few weeks back, Amazon announced new service called “Lightsail” to provide VPS (Virtual Private Server) starting from $5 a month.
In $5 plan, you get 512 MB RAM, one virtual CPU, 20 GB SSD, 1 TB transfer
By looking at pricing, looks like direct completion with DigitalOcean.
Lightsail is on top of AWS (Amazon Web Service) with many features to ease the hosting for Joomla, WordPress, Magento, Drupal, Node.js, MEAN, etc.
However, in this article – I will focus on Joomla.
Some of the notable features.
- Static IP address
- Scalable and access to AWS services
- SSH terminal
- Server monitoring
- High-performing SSD storage
- Speedy & secure network
- The first month free
Let’s get it started.
Creating a Lightsail account
- Access Amazon Lightsail website and click Sign up
- Enter your email and select “I am a new user.”
- Fill the information on “Login Credentials” & “Contact Information” page and click “Create account.”
- Enter the credit card information and activate your account
- Once done, login with the credential and you will get the “Getting started” popup.
Create a Joomla Instance
Assuming you are still logged-in, select the “Joomla” from the list
- Scroll down and select the plan
- Choose the zone where you want to host your website
- Change the name of the instance if you want and click “Create.”
- it will take few seconds to set up and once done; you should see the instance created
Connecting to Lightsail Server
There are two ways you can connect to your Lightsail server
Through browser – you can get into the server right from the browser itself. Click on the instance, and you will have a button “Connect using SSH.”
This would be probably the easiest way to connect. You don’t need to enter any credential as a session is being authenticated with your Lightsail login.
To become a root, you type “sudo su –” as shown below.
Using SSH client – You can follow the detailed instructions on how to connect using SSH client like Putty.
Managing Lightsail Instance
You can manage your entire server and Joomla through a browser and let’s take a look at some of the important configuration & metrics.
IP address – you will get one public IP to map to your domain and one private IP. If you are just going to have one instance, then you may not use the private IP. However, if you are looking to connect to another AWS services, then you may need this.
Public IP & Private IP is shown next to the instance on top.
Utilization Report – you get CPU, Network usage in an interval of 1h, 6h, 1d, 1w and 2weeks.
It’s available under “Metrics” tab.
Firewall – Port 22, 80 & 443 is allowed by default. However, if you would like to allow some other port or want to edit existing port, you can do it through the browser under “Networking” tab.
Changing SSH port from 22 to something else would be a good idea to prevent brute force attacks.
Snapshots – It would be useful to take a backup of your instance so if something goes wrong, you can restore with the taken snapshot.
Rebooting VM – stop and restart option is just next to instance details.
Mapping domain to Public IP
Before you map your domain name to public IP, you need to reserve a static IP. The current public IP which you see is dynamic, and it may change after you reboot your VM.
- To create a static public IP, click “Create other resources” and select “static IP.”
- Choose the instance to attach the IP and click “Create.”
- In few seconds, you should get a new public static IP
Now you are all set to map this public IP to your domain at the registrar. You can login to your domain registrar and update the A record for your domain to public IP.
For ex, if your domain is registered with Name Cheap
- Click “Manage” next to domain
- Go to “Advanced DNS.”
- Click “ADD NEW RECORD.”
- Select “A Record” to enter the public IP address and save the changes by clicking green tick mark.
It will take some time to propagate the DNS globally. You may use DNS Record Lookup tool to verify the A record.
Once done, try accessing your domain and you should see the Joomla default page.
Wondering what’s the credential to login to Joomla Admin Console?
Default username is – user
Password is stored in the file – /home/bitnami/bitnami_application_password
I did the speed test on my website powered by Lightsail and result is fantastic.
I didn’t install any extension, and it was loaded in less than one second.
GTmetrix test from Dallas
TWC test from California
Pingdom test from New York
Joomla performs better on Lightsail and looks promising to me. One month is free so give a try to see how it goes.