create website NGINX Amazon

create website NGINX Amazon

In this guide, we will explain how to create and configure a website on Amazon Lightsail NGINX instance.

What is Amazon Lightsail?

Amazon Lightsail is the simplest and cost-efficient server environment runs on AWS trusted networks with the SSD-based storage and best for self-hosted small or medium websites or web-stores. Lightsail plans include a static IP address, DNS management, resource monitoring, and of course the remote access via SSH with secure key management.

Why Amazon Lightsail cheaper than EC2?

Create instance

  • Step 1: Register a free Amazon Lightsail account. The free trial offer is applicable to usage within the first calendar month from when you sign up to use Lightsail.
    amazon lightsail aws best price
  • Step 2: Login to Amazon Lightsail and go to Instances
    amazon lightsail create instance
  • Step 3: Pick the Linux/Unix with the Nginx instance image. Why Nginx? Nginx image is certified by Bitnami provides a complete PHP, MySQL, and Nginx fast production environment. It also pre-bundles with phpMyAdmin, SQLite, ImageMagick, FastCGI, Memcache, GD, CURL, PEAR, PECL, and other components. It is secure by default, as all ports except HTTP, HTTPS, and SSH ports are closed. Let's Encrypt SSL certificates are supported.
    Lightsail linux image
  • Step 4: Choose the instance plan. The lowest is pretty good and fast for a single site
    Lightsail linux image
  • Step 5: Wait for a moment to see your NGINX instance up and running
    Nginx image aws
  • Step 6: Does Your Site Need a Database? Let's create one.
    Lightsail offers solid Managed Databases with $15+ pricing but we will show you how to build a website instance without a managed database, skip managed database, and do not create it.
    Amazon Lightsail database
    Instead, go to the next step to create a database in Nginx instance.
  • Step 7: Connect to your Lightsail instance with the browser-based SSH terminal. Simple and secure.
    Amazon Lightsail connect to terminal
    If you are looking for alternatives see guide how to Connect to your Linux/Unix-based Lightsail instance using PuTTY
  • Step 8: Type the mysql -V (capital) to get your MySQL version and make sure it is running.
    Type mysql -u root -p to connect to the database in Nginx.
    Amazon Lightsail connect to terminal
    Was ist das? What is the password.
  • Step 9: MySQL Credentials. Default database username: root
  • Step 10: Obtain MySQL password. The bitnami_application_password file is located in your home directory. You can read it with the following command:
    sudo cat /home/bitnami/bitnami_application_password
    this will show you your MySQL user password
    Amazon Lightsail Mysql password
    run again the mysql -u root -p and enter your MySQL password
  • Step 10: Create the Database Using MySQL from the Command Line.
    Type create database databasename;
  • Step 11:Exit the MySql. Type \q
    Nginx mysql create db
  • Step 12: update server.
    sudo apt-get update
  • Step 13: Move site files to the web directory in Nginx.
    the default Nginx directory web access is /opt/bitnami/nginx/html/

Nginx instance import database

to import SQL data to your database, upload SQL file to your instance, and run
cd /opt/bitnami/mysql/tmp/ or folder where you upload you file.sql file

mysql -u root -p
use database_name;
source file.sql

after import ends run to check
show tables;
quit the Mysql


Nginx instance map domain

  • Attach a static IP address to your Nginx instance. On your instance management page, under the Networking tab, choose to Create static IP. see Create a static IP and attach it to an instance in Amazon Lightsail.
  • Create a DNS zone. On the Lightsail console home page, under the Networking tab, choose Create DNS zone. For more information, see Creating a DNS zone to manage your domain’s DNS records in Amazon Lightsail.
  • To map your domain name to your Nginx instance change the name servers at your domain’s current DNS hosting provider
    • Write down the Lightsail name servers that are listed in on your domain's DNS zone management page.
    • Sign in to your domain’s current DNS hosting provider’s website.
    • Find the page where you can edit your domain's name servers.
    • Enter the Lightsail name servers, and remove other name servers listed.

create a free SSL certificate with your Nginx in Amazon Lightsail

Follow Amazon Lightsail guide

Setup several websites on one nginx instance

Read Part 2 of this guide to find out how to add two or more sites with subdomains in a single instance of Nginx. How to create a subdomain on AWS Lightsail?