Deploying Full Stack App onto Ubuntu/AWS: Postgres, Express, React, Node + SSL Let's Encrypt

  Рет қаралды 59,061

Sanjeev Thiyagarajan

Sanjeev Thiyagarajan

Күн бұрын

In this video I'm going I'll cover how to deploy a full stack app onto an Ubuntu VM running on AWS. We'll be deploying an app that runs on the Pern stack(postgres, express, React, node). The example project that will be deployed will be the one that is covered in the following tutorial:
• PERN Stack Mega Course...
We will be using Nginx to serve our app and make use of Let's encrypt for SSL.
Git Repo:
github.com/Sanjeev-Thiyagaraj...
Subscribe to my Channel:
/ @sanjeevthiyagarajan
/ sanjeev_tea
/ sanjeev_tea
Timestamps:
00:00 intro
07:59 Code modification
14:35 Deploy EC2 Instance
18:22 SSH to EC2 Instance
20:27 Install Postgres
32:00 Cloning Postgres database
40:39 Cloning git Repo
42:43 Install Node & PM2
52:27 Build React App
54:07 Install Nginx
55:15 Configure Nginx
01:14:38 Registering Domain
01:19:08 Setting Environment variables
01:30:14 Configure Ubuntu Firewall
01:32:48 Configuring SSL with Let's Encrypt
01:39:14 Fixing database issues

Пікірлер: 130
@TheInphinion
@TheInphinion 3 жыл бұрын
Thank you so much for creating this video. I loved the first part with the Yelp Clone and learned so much.
@abdulibrahim6035
@abdulibrahim6035 2 жыл бұрын
This is the best and most comprehensive video on AWS deployment I've ever seen! Thank you! Subscribed!
@toshvelaga
@toshvelaga 2 жыл бұрын
This is one of the most useful dev videos i keep coming back to
@emiliorojas583
@emiliorojas583 2 жыл бұрын
man, you can't imagine how grateful i am. your video was the light i was looking for so long i appreciate so much. your content quality is definitely godlike
@user-ps5bu9bd4q
@user-ps5bu9bd4q 2 жыл бұрын
Best recorded tutorial I've ever seen. You are the best, thank you!
@tarnum113
@tarnum113 2 жыл бұрын
One of the best tutorials ever! Thank you! Just deployed my first ever website!
@Joa764
@Joa764 3 жыл бұрын
One of the best channels out there! The video descriptions are priceless hahahaha Keep it up man, you're doing awesome work! More subs will come.
@jamesikubi6831
@jamesikubi6831 2 жыл бұрын
This is one of the most informative videos I've ever watched. Thanks so much Sanjeev.
@raafi101
@raafi101 2 жыл бұрын
Thank you sooooo much for this. I was stuck trying to deploy my PERN app for days and then I found this video.
@friendlyreviewer840
@friendlyreviewer840 Жыл бұрын
OMG i was so stuck. Your tutorial fixed a problem ive been working on for a week. Thankyou so much!!
@topleetcoder8610
@topleetcoder8610 2 жыл бұрын
Incredible tutorial! Thank you so much :)
@nationbuilding5319
@nationbuilding5319 2 жыл бұрын
as always your videos are excellent!! Thanks for the knowledge
@sanzaydahal6760
@sanzaydahal6760 3 жыл бұрын
Hi Sanjeev Thanks for this awesome content. However, this doesn't seems to be a complete/comprehensive deployment tutorial. Can you please include general upgrading strategy? Like creating CI/CD Pipeline.....
@jaburu01
@jaburu01 2 жыл бұрын
This tutorial is just amazing!
@farrukhatabekov595
@farrukhatabekov595 3 жыл бұрын
Thank you very much for such a golden resource ! All the best .
@wlcheng
@wlcheng 3 жыл бұрын
Thank you so much for your tutorial. Learned so much!
@dinindukanchana8554
@dinindukanchana8554 2 жыл бұрын
This is really informative. You saved a lot of my time. Thank you very much.
@h.m.zakariasumon1644
@h.m.zakariasumon1644 Жыл бұрын
This video is very useful for us who are self-learning. Thanks for this awesome video.
@Anarchy_OW
@Anarchy_OW 10 ай бұрын
I can't thank you enough for this, honestly. Just thank you so much.
@kvtys
@kvtys 9 ай бұрын
LITERALLY. You are incredible man. Life saver and a half.
@randomcell708
@randomcell708 3 жыл бұрын
Great tutorial, consise and clear. Would you be able to expand on this to show how to deploy this app using the AWS pipeline?
@tulsicreation2026
@tulsicreation2026 2 жыл бұрын
One of best video and documentation for fullstack project deployment on AWS, i follow all instruction explain by sanjeev and it works, i learn lot. thank for sharing this supperb knowledge.
@soultouchingsongs
@soultouchingsongs 3 жыл бұрын
Thank you so much Sanjeev 🙏. The best deployment tutorial I have ever seen on KZbin👍
@ankushtagore4299
@ankushtagore4299 Жыл бұрын
men will be men
@mirsha3054
@mirsha3054 3 жыл бұрын
Man, I wanna thank you one million, this is solid content. You really have quality implementation. I have watched All and learn a lot from you :)
@nameless_9504
@nameless_9504 3 жыл бұрын
Yep that's true !!
@ayencoscolfield3312
@ayencoscolfield3312 2 жыл бұрын
you are correct on that have been blessed a lot through his videos trainings
@mreddygi
@mreddygi Ай бұрын
thank you for this sir, it helped me a lot.
@XiagraBalls
@XiagraBalls 2 жыл бұрын
This was long, but well worth it. 👍🏻
@HIghtowerSever
@HIghtowerSever 3 жыл бұрын
It's a great tutorial. Thanks a lot!
@Avocado.777
@Avocado.777 9 ай бұрын
Sanjeev, I am immensely grateful for your effort in creating this masterpiece. I truly hope your journey reaches even greater heights; you have a great potential within you. Thanks.
@jeremyashley1668
@jeremyashley1668 7 ай бұрын
did you get the variables to export?
@fredericolivier7896
@fredericolivier7896 3 жыл бұрын
You need a Patreon account man. I got to support you with this. Lifesaver man.
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
Lol technically I do have one. I just have no idea what kind of content to put up on there
@fredericolivier7896
@fredericolivier7896 3 жыл бұрын
@@SanjeevThiyagarajan well let me know man that was some great stuff.
@rebeccaindy
@rebeccaindy 3 жыл бұрын
Same
@nevendrean5772
@nevendrean5772 3 жыл бұрын
solid, clean, detailled ***
@411sev
@411sev Жыл бұрын
Thank you. That's the tutorial I was looking for. But I couldn't ssh into my ec2.
@dawoodvaleed5848
@dawoodvaleed5848 3 жыл бұрын
Great video, really appreciate the help
@ThenavigoCreators
@ThenavigoCreators Жыл бұрын
Great tutorial, very useful. Thanks
@BGPNetworks
@BGPNetworks 3 жыл бұрын
Dude!! great explanation.. Must have missed something but which development server we're talking abt for the pg_dump?
@rangabharath4253
@rangabharath4253 3 жыл бұрын
Please make the deployment using docker or kubernetes :)
@SanjeevThiyagarajan
@SanjeevThiyagarajan 2 жыл бұрын
I made a video on that. Please check my docker node course
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk 11 ай бұрын
​@@SanjeevThiyagarajan2:46 2:46
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk 11 ай бұрын
​@@SanjeevThiyagarajan2:46 you 😢 2:46
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk 11 ай бұрын
Me and you tonight?
@oscarfelix7244
@oscarfelix7244 Жыл бұрын
Bro! Thank You 🙏🏼
@Mates087
@Mates087 2 жыл бұрын
it is very useful, thank you!
@Sanyat100
@Sanyat100 3 жыл бұрын
You the man !!
@satishlute9376
@satishlute9376 11 ай бұрын
❤❤ , ur very fantastic teacher..
@darkarie
@darkarie 3 жыл бұрын
BIG THANK YOU!!!!!!!!!!
@buka.a
@buka.a 2 жыл бұрын
This is beautiful
@zscoder
@zscoder 2 жыл бұрын
Enjoyed this cheers
@jackpetersen8990
@jackpetersen8990 Жыл бұрын
You are a golden god.
@anandhukraju8044
@anandhukraju8044 3 жыл бұрын
Can you make a video on some of the next steps like securing the DB and stuff like you mentioned towards the end of the video? Thanks for this thoh! :)
@kvtys
@kvtys 9 ай бұрын
I hope you get the nobel peace prize for this
@hanif3661
@hanif3661 Жыл бұрын
thanks a lot.
@joydeepbhattacharjee5305
@joydeepbhattacharjee5305 2 жыл бұрын
Thanks man
@productmeow
@productmeow Жыл бұрын
If you see "Permissions 0644 for '' are too open." when trying to SSH using the pem file Run this command: chmod 400 Reference timeline: 20:09
@Rakuraku
@Rakuraku 3 жыл бұрын
Hi. Thanks for great video. Why use ubuntu not linux?
@jayprmedia
@jayprmedia 2 жыл бұрын
Can you please make a tutorial with Next js instead of React? I would like to use Next js for better SEO. It would be really great !
@internetexplorer7880
@internetexplorer7880 2 жыл бұрын
Thank you for your videos, can you make a tutorial to deploy a multi container project into heroku
@DuyTran-ss4lu
@DuyTran-ss4lu 3 жыл бұрын
Awesome
@hieubuict96
@hieubuict96 2 жыл бұрын
the text editor you are using in the video above is beautiful, can you tell me what it is? thanks
@karimdakroury4977
@karimdakroury4977 3 жыл бұрын
Hey, i have a couple of questions if you can please help me out. Should i use pg dump or create an RDS on AWS?
@rangabharath4253
@rangabharath4253 3 жыл бұрын
awesome
@bot74774
@bot74774 Жыл бұрын
Would you make some tutorials that when you make some updates on your codes, nginx will auto update the code?
@nevergo9884
@nevergo9884 11 ай бұрын
This is the greatest tutorial I ever seen. Thank you so much for your time and help!
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk 11 ай бұрын
❤ 2:04
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk 11 ай бұрын
2:25 🎉
@austinlee_inc
@austinlee_inc 11 ай бұрын
Hi Sanjeev, amazing walkthrough - for some reason after I update the server block file in my nginx, instead of seeing my website, I get a 500 internal service error. Checking my error logs it seems to say the build failed/failed 13: permission Denied... do you know what could be the issue with my deployment?
@brianma875
@brianma875 7 ай бұрын
Got the same error. Could you tell me how did you fixed it?
@anusree2347
@anusree2347 7 ай бұрын
​@@brianma875 As mentioned by @productmeow, You need to do the following - sudo vim ~/etc/nginx/nginx.config - Comment out the first line "user www-data" - Add a new line directly below the commented out line with this content "user ubuntu;" (without the double quotes) - Run command: sudo systemctl restart nginx - You can now view your site
@Orion52441
@Orion52441 2 жыл бұрын
thanks
@Vasko10100
@Vasko10100 3 жыл бұрын
I'm begging you, please make a PAID course on React, Node, PostGres, Docker, AWS etc etc. I will repeat once again: This is pure GOLD! I want to give you money man! Please make a full paid course!
@severalpens
@severalpens 3 жыл бұрын
Seconded. I can't believe how ridiculously hard this task was. I was starting to look like a real idiot promising something I couldn't do. This tutorial saved me.
@ernestkumm6825
@ernestkumm6825 3 ай бұрын
hi Sanjeev, once again great video thanks man.... I have tried multiple angles on a poitn I got stuck at, can you please guide me Error: Cannot find module './out/index' I get this error when running "npm run build" on client directory, the build directory does not get build, I installed Node.js v21.6.2
@programmer9809
@programmer9809 19 күн бұрын
👍
@smarttech743
@smarttech743 2 жыл бұрын
How can I connect RDS postgres db to your nodejs app when I don't want to install postgress on virtual machine.
@TheInphinion
@TheInphinion 3 жыл бұрын
Deploy with docker on aws please.
@samuelbebas6381
@samuelbebas6381 2 жыл бұрын
Hi everyone, i got a little problem. Everything when fine, the problem is axios response data returning html instead of object/json, any idea what cause it? Thanks a lot
@abrahammolina4012
@abrahammolina4012 5 ай бұрын
hola alguien sabe de donde sale el .pem necesito ayuda
@nohelia6843
@nohelia6843 5 ай бұрын
how to configure pg admin in ubuntu server to continue updating db?
@mohamedyoussef8835
@mohamedyoussef8835 Жыл бұрын
Awesome video ++++++++++++++++++ 🙂
@ajayb8730
@ajayb8730 3 жыл бұрын
bro i need your help to config the server.js file for ec2 deployment and I couldn't connect the pd db with my server.js. how can I reach you out to solve this problem? help me out please
@zachsanchez1644
@zachsanchez1644 3 жыл бұрын
ran into an error around 1:00:00 , very clear and concise - app was fully functional - didn't get any errors from part one or this part until now /: I sent you a twitter dm if you don't mind helping me out
@zachsanchez1644
@zachsanchez1644 3 жыл бұрын
wanted to apologize as it was my fault! i was deploying on digital ocean instead of AWS and skipped over adding HTTP/HTTPS to my inbound rules - as well as had to update directory rules because i used the root user instead of ssh access !
@ashutoshpanda4336
@ashutoshpanda4336 3 жыл бұрын
Great video but in all production front-end app on S3 with domain and the backend on EC2 with creating a subdomain... Can you please do that
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
Yeah I can do that. I'll try to get something up in the next couple of weeks
@ashutoshpanda4336
@ashutoshpanda4336 3 жыл бұрын
Thank you so much... I'm struggling with this... Waiting for the video... Thank you ☺️
@user-ij5tq6sp2x
@user-ij5tq6sp2x 2 жыл бұрын
After encrypting I ran into a really frustrating problem. My site was loading but not the database. And it wasn't like yours ( I didn't use env variables like that). When I checked the network I could see that all my api calls were getting blocked with the message 'blocked: mixed content'. Please help
@adesojialu1051
@adesojialu1051 4 ай бұрын
my postgres database exists on aws instance already, what do i do?
@Friis1978
@Friis1978 3 жыл бұрын
Hi Sanjeev, I havent done your other tutorial where you made the db, could you perhaps provide a sql file with the database for us to be able to make the database dumb in the video?
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
Yeah let me grab that for you and upload it to the github page
@Friis1978
@Friis1978 3 жыл бұрын
@@SanjeevThiyagarajan great, thank you very much.
@tjisanakerr711
@tjisanakerr711 Жыл бұрын
@@SanjeevThiyagarajan Did you ever upload this? I can't find it on the github repo. Thanks
@Deepak-tx3rw
@Deepak-tx3rw Жыл бұрын
i need urgent help to deploy PERN stack on hostinger Ubuntu server or Windows VPS, Please help me
@productmeow
@productmeow Жыл бұрын
For your new domain, make sure you setup the A record and CNAME record. A record - Host: @ - Value: C Name - Host: www - Value:
@saint1yusuf
@saint1yusuf 2 жыл бұрын
58:20 I can't see this page. Where is the problem? I couldn't solve this problem for a week!
@blackraven6049
@blackraven6049 2 жыл бұрын
Am I going to get charged for deploying it on EC2? Can I do Lambda instead?
@productmeow
@productmeow Жыл бұрын
If you see "Forbidden 403" after setting up your nginx You need to do the following - sudo vim ~/etc/nginx/nginx.config - Comment out the first line "user www-data" - Add a new line directly below the commented out line with this content "user ubuntu;" (without the double quotes) - Run command: sudo systemctl restart nginx - You can now view your site Reference timestamp: 1:04:41
@tylergreen6453
@tylergreen6453 Жыл бұрын
THANK YOU
@adelalqaabi4642
@adelalqaabi4642 Жыл бұрын
I'm getting 405 when i try to login in my React app {message: 'Request failed with status code 405', name: 'AxiosError', code: 'ERR_BAD_REQUEST', config: {…}, request: XMLHttpRequest, …}
@steven2633
@steven2633 Жыл бұрын
Thanks so much, this helped me in my last steps of debugging.
@anusree2347
@anusree2347 7 ай бұрын
Thank you so much! It solved the 500 Internal Server Error also
@muhammedsalil256
@muhammedsalil256 Ай бұрын
​@@adelalqaabi4642 did you solved the error ? i am facing this issue
@logan0501
@logan0501 2 жыл бұрын
What pem file bro
@stoicpoetrywisdom
@stoicpoetrywisdom Жыл бұрын
How much would it cost to deploy this to AWS ?
@SH-lt2iv
@SH-lt2iv 3 жыл бұрын
MERN project next please.
@TheRastishopper
@TheRastishopper 6 ай бұрын
For those struggling in the end: 1. Make sure node modules are audited, 2. If your website is displaying, but without anything from the database, make sure that pm2 has your environment variables. I had to update pm2 and then delete and start the pm2 app again.
@logeshs5412
@logeshs5412 5 ай бұрын
how to do it pm2 thing?
@logeshs5412
@logeshs5412 5 ай бұрын
whether it is enough to restart pm2?
@dan6054
@dan6054 3 жыл бұрын
1:35:24 "No don't send me email" LEGEND
@faithfulojebiyi
@faithfulojebiyi 3 жыл бұрын
What if the github repo is private? would you still be able to clone it directly
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
yes, when you run the clone command it will prompt you for username and password
@faithfulojebiyi
@faithfulojebiyi 3 жыл бұрын
@@SanjeevThiyagarajan would it request for password during subsequent pull requests?
@izaiasaraujogomesdasilva3354
@izaiasaraujogomesdasilva3354 3 жыл бұрын
Please make the deployment using docker or kubernetes²
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
Just dropped a video on docker an how to deploy using docker. We won't be deploying pern stack specifically, but it goes over the core concepts
@broccool2300
@broccool2300 3 жыл бұрын
I tried to log in on the terminal with ssh like you showed and I got denied with warning "WARNING: UNPROTECTED PRIVATE KEY FILE!" Permission for ....pem' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored.
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
You have to change the permissions of the pem file
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
Chmod 400 will do the job
@broccool2300
@broccool2300 3 жыл бұрын
@@SanjeevThiyagarajan Thank you
@nameless_9504
@nameless_9504 3 жыл бұрын
Bro please connect database to RDS please it will be more helpful
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 жыл бұрын
dam i was thinking about doing that for the video, but i figured more people would want be interested in deploying to a single VM. That way they can use the same steps on a digital ocean droplet. I'll definately be making more deployment tutorials in the future and will have rds involved
@nameless_9504
@nameless_9504 3 жыл бұрын
@@SanjeevThiyagarajan thank you brother. Please involve RDS and btw your creating a great content 👍
@greykor140
@greykor140 2 жыл бұрын
Does deploying something like this cost money?
@code22id20
@code22id20 2 жыл бұрын
yes bro 1 $
@robertoherman7504
@robertoherman7504 3 жыл бұрын
Why do we need NGINX when we can already server the build/index.html file using Express and put "proxy": "localhost:3001" in the client side's package.json? Using nginx seems pointless to me within the scope of this tech stack. What am I missing?
@mcm0125
@mcm0125 Жыл бұрын
For people stuck at the end with RestaurantDetail pages not rendering, change the prod. path at 14:17 from "api/v1/restaurants" to "/api/v1/restaurants" . Adding the "/" before api fixed my app. Push the changes, then pull them to your ubuntu copy and rebuild.
@Droodt
@Droodt 2 ай бұрын
Thank you, was wondering for hours why it wasn't working
Зомби Апокалипсис  часть 1 🤯#shorts
00:29
INNA SERG
Рет қаралды 6 МЛН
How To Deploy A React App - Using NGINX & Linux
23:09
Tech With Tim
Рет қаралды 74 М.
Deploy Node app on AWS EC2 Amazon Linux 2
14:51
Sam Meech-Ward
Рет қаралды 82 М.
Learn JWT with the PERN stack by building a Registration/Login system Part 1
1:33:50
Full Node.js Deployment - NGINX, SSL With Lets Encrypt
23:48
Traversy Media
Рет қаралды 397 М.
Learn Docker in 1 Hour | Full Docker Course for Beginners
1:27:53
JavaScript Mastery
Рет қаралды 256 М.
Kubernetes Crash Course for Absolute Beginners [NEW]
1:12:04
TechWorld with Nana
Рет қаралды 2,5 МЛН
PERN Stack Course - Postgres, Express, React, and Node
1:22:45
freeCodeCamp.org
Рет қаралды 471 М.
How to Get a Developer Job - Even in This Economy [Full Course]
3:59:46
freeCodeCamp.org
Рет қаралды 2,1 МЛН
What % of charge do you have on phone?🔋
0:11
Diana Belitskay
Рет қаралды 346 М.
Наушники Ой🤣
0:26
Listen_pods
Рет қаралды 495 М.
Распаковка айфона под водой!💦(🎥: @saken_kagarov on IG)
0:20
Взрывная История
Рет қаралды 13 МЛН
Introducing GPT-4o
26:13
OpenAI
Рет қаралды 3,8 МЛН