Skip to content

NoErrorsFound/cloud-blog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Practical 9 — Online Blog Application Deployment (AWS EC2) Aim

Deploy a full-stack blog application on AWS cloud using EC2, Node.js, and MongoDB.

Step 1 — Launch EC2 Instance

AWS Console → EC2 → Launch Instance

Choose:

Setting Value Name blog-app AMI Ubuntu Instance Type t2.micro Allow Traffic HTTP + SSH

Click:

Launch Instance Step 2 — Connect to EC2

Click:

Connect → EC2 Instance Connect → Connect Step 3 — Update Ubuntu

Run:

sudo apt update Step 4 — Install Node.js

Run:

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -

sudo apt install -y nodejs

Check:

node -v npm -v Step 5 — Install MongoDB

Run:

sudo apt-get install gnupg curl curl -fsSL https://pgp.mongodb.com/server-6.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg --dearmor

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

sudo apt update

sudo apt install -y mongodb-org

Step 6 — Start MongoDB

Run:

sudo systemctl start mongod sudo systemctl enable mongod

Check:

sudo systemctl status mongod Step 7 — Clone Blog Project

Run:

git clone YOUR_GITHUB_BLOG_URL

Example:

git clone https://github.com/yourusername/blog-app.git Step 8 — Open Project Folder

Run:

cd blog-app

Check files:

ls Step 9 — Install Dependencies

Run:

npm install Step 10 — Open Port in Security Group

AWS Console → EC2 → Security Groups → Inbound Rules

Add:

Type Port Source Custom TCP 3000 Anywhere IPv4

Click:

Save rules Step 11 — Run Blog Application

Run:

node app.js

OR

npm start

You should see:

Server started Connected to MongoDB

DO NOT PRESS CTRL+C.

Step 12 — Open Blog Website

Browser:

http://YOUR_PUBLIC_IP:3000

Example:

http://54.174.125.83:3000 Step 13 — Run Permanently Using PM2

Stop once:

CTRL + C

Install PM2:

sudo npm install -g pm2

Start:

pm2 start app.js

OR

pm2 start index.js

Check:

pm2 list

Save:

pm2 save

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors