Running NGINX website on Oracle Cloud Ubuntu instance
Table of Contents
Prerequisites
- Oracle Cloud account with an Ubuntu instance (Free Instance works)
- Familiarity with connecting to a remote instance (like VM) using SSH, including SSH key setup.
Steps
Setup a Ubuntu Instance in Oracle Cloud
- Create an Instance with Ubuntu or Debian image
- Update packages
sudo apt update
sudo apt upgrade
Allow connections port 80 in the Oracle’s VCN
By default, Oracle doesn’t allow connections to port 80 in its Virtual Cloud Network (VCN), which connects your instance to the Internet. Add port 80 to its ingress list to allow connections.
- Click the subnet link from the instance page
- From there, click on the default security list
- Add a new Ingress Rule
- with Source CIDR
0.0.0.0/0
- IP Protocol
TCP
- Destination Port Range
80
- And Description
HTTP
- with Source CIDR
Install and Setup Nginx
- Install Nginx
sudo apt install nginx
- Verify installation
sudo nginx -v
- Check the nginx service status
systemctl status nginx
- if not active, start nginx
sudo systemctl start nginx.service
- Check with Curl inside the instance
curl localhost
- This should return/print a sample webpage.
- Add Iptable entries to allow incoming and outgoing connections to port 80
sudo iptables -I INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -I OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
- Check with Curl on another machine
curl <instance-ip-address>
Done! Sample site should be up