Тёмный
No video :(

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

Sanjeev Thiyagarajan
Подписаться 26 тыс.
Просмотров 63 тыс.
50% 1

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

Опубликовано:

 

5 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 132   
@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
@TheInphinion
@TheInphinion 3 года назад
Thank you so much for creating this video. I loved the first part with the Yelp Clone and learned so much.
@user-ps5bu9bd4q
@user-ps5bu9bd4q 2 года назад
Best recorded tutorial I've ever seen. You are the best, thank you!
@abdulibrahim6035
@abdulibrahim6035 2 года назад
This is the best and most comprehensive video on AWS deployment I've ever seen! Thank you! Subscribed!
@raafi101
@raafi101 3 года назад
Thank you sooooo much for this. I was stuck trying to deploy my PERN app for days and then I found this video.
@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.
@tarnum113
@tarnum113 2 года назад
One of the best tutorials ever! Thank you! Just deployed my first ever website!
@jamesikubi6831
@jamesikubi6831 2 года назад
This is one of the most informative videos I've ever watched. Thanks so much Sanjeev.
@toshvelaga
@toshvelaga 2 года назад
This is one of the most useful dev videos i keep coming back to
@friendlyreviewer840
@friendlyreviewer840 Год назад
OMG i was so stuck. Your tutorial fixed a problem ive been working on for a week. Thankyou so much!!
@lunardesigner6779
@lunardesigner6779 4 дня назад
Hey man, just want to say your video is awesome and clear. It's like a hidden gem. I wish many people would see this. Thanks man.
@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.
@Anarchy_OW
@Anarchy_OW Год назад
I can't thank you enough for this, honestly. Just thank you so much.
@kvtys
@kvtys 11 месяцев назад
LITERALLY. You are incredible man. Life saver and a half.
@soultouchingsongs
@soultouchingsongs 3 года назад
Thank you so much Sanjeev 🙏. The best deployment tutorial I have ever seen on RU-vid👍
@ankushtagore4299
@ankushtagore4299 Год назад
men will be men
@jaburu01
@jaburu01 3 года назад
This tutorial is just amazing!
@farrukhatabekov595
@farrukhatabekov595 3 года назад
Thank you very much for such a golden resource ! All the best .
@nationbuilding5319
@nationbuilding5319 2 года назад
as always your videos are excellent!! Thanks for the knowledge
@h.m.zakariasumon1644
@h.m.zakariasumon1644 Год назад
This video is very useful for us who are self-learning. Thanks for this awesome video.
@topleetcoder8610
@topleetcoder8610 3 года назад
Incredible tutorial! Thank you so much :)
@dinindukanchana8554
@dinindukanchana8554 3 года назад
This is really informative. You saved a lot of my time. Thank you very much.
@wlcheng
@wlcheng 3 года назад
Thank you so much for your tutorial. Learned so much!
@Avocado.777
@Avocado.777 Год назад
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 10 месяцев назад
did you get the variables to export?
@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
@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.....
@mreddygi
@mreddygi 4 месяца назад
thank you for this sir, it helped me a lot.
@HIghtowerSever
@HIghtowerSever 3 года назад
It's a great tutorial. Thanks a lot!
@XiagraBalls
@XiagraBalls 2 года назад
This was long, but well worth it. 👍🏻
@ThenavigoCreators
@ThenavigoCreators 2 года назад
Great tutorial, very useful. Thanks
@dawoodvaleed5848
@dawoodvaleed5848 3 года назад
Great video, really appreciate the help
@Mates087
@Mates087 3 года назад
it is very useful, thank you!
@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
@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?
@nevendrean5772
@nevendrean5772 3 года назад
solid, clean, detailled ***
@zscoder
@zscoder 2 года назад
Enjoyed this cheers
@satishlute9376
@satishlute9376 Год назад
❤❤ , ur very fantastic teacher..
@darkarie
@darkarie 3 года назад
BIG THANK YOU!!!!!!!!!!
@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
@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 10 месяцев назад
Thank you so much! It solved the 500 Internal Server Error also
@user-cc7rg1bv8i
@user-cc7rg1bv8i 2 месяца назад
Bro you are saviour.
@rangabharath4253
@rangabharath4253 3 года назад
Please make the deployment using docker or kubernetes :)
@SanjeevThiyagarajan
@SanjeevThiyagarajan 3 года назад
I made a video on that. Please check my docker node course
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk Год назад
​@@SanjeevThiyagarajan2:46 2:46
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk Год назад
​@@SanjeevThiyagarajan2:46 you 😢 2:46
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk Год назад
Me and you tonight?
@Sanyat100
@Sanyat100 3 года назад
You the man !!
@buka.a
@buka.a 2 года назад
This is beautiful
@jackpetersen8990
@jackpetersen8990 Год назад
You are a golden god.
@411sev
@411sev Год назад
Thank you. That's the tutorial I was looking for. But I couldn't ssh into my ec2.
@oscarfelix7244
@oscarfelix7244 Год назад
Bro! Thank You 🙏🏼
@kvtys
@kvtys 11 месяцев назад
I hope you get the nobel peace prize for this
@DuyTran-ss4lu
@DuyTran-ss4lu 3 года назад
Awesome
@hanif3661
@hanif3661 Год назад
thanks a lot.
@nevergo9884
@nevergo9884 Год назад
This is the greatest tutorial I ever seen. Thank you so much for your time and help!
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk Год назад
❤ 2:04
@Nalltyrone-gf1tk
@Nalltyrone-gf1tk Год назад
2:25 🎉
@joydeepbhattacharjee5305
@joydeepbhattacharjee5305 2 года назад
Thanks man
@rangabharath4253
@rangabharath4253 3 года назад
awesome
@BGPNetworks
@BGPNetworks 3 года назад
Dude!! great explanation.. Must have missed something but which development server we're talking abt for the pg_dump?
@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.
@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?
@mohamedyoussef8835
@mohamedyoussef8835 Год назад
Awesome video ++++++++++++++++++ 🙂
@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! :)
@chiragagrawal6205
@chiragagrawal6205 2 месяца назад
How was your backend server running even before setting the env variables , how it got connected to db without credentials ?
@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
@TheInphinion
@TheInphinion 3 года назад
Deploy with docker on aws please.
@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
@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
@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.
@jayprmedia
@jayprmedia 3 года назад
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 !
@Orion52441
@Orion52441 2 года назад
thanks
@hieubuict96
@hieubuict96 2 года назад
the text editor you are using in the video above is beautiful, can you tell me what it is? thanks
@adesojialu1051
@adesojialu1051 7 месяцев назад
my postgres database exists on aws instance already, what do i do?
@programmer9809
@programmer9809 3 месяца назад
👍
@bot74774
@bot74774 Год назад
Would you make some tutorials that when you make some updates on your codes, nginx will auto update the code?
@ernestkumm6825
@ernestkumm6825 5 месяцев назад
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
@internetexplorer7880
@internetexplorer7880 2 года назад
Thank you for your videos, can you make a tutorial to deploy a multi container project into heroku
@Deepak-tx3rw
@Deepak-tx3rw Год назад
i need urgent help to deploy PERN stack on hostinger Ubuntu server or Windows VPS, Please help me
@saint1yusuf
@saint1yusuf 2 года назад
58:20 I can't see this page. Where is the problem? I couldn't solve this problem for a week!
@abrahammolina4012
@abrahammolina4012 8 месяцев назад
hola alguien sabe de donde sale el .pem necesito ayuda
@blackraven6049
@blackraven6049 2 года назад
Am I going to get charged for deploying it on EC2? Can I do Lambda instead?
@nohelia6843
@nohelia6843 7 месяцев назад
how to configure pg admin in ubuntu server to continue updating db?
@austinlee_inc
@austinlee_inc Год назад
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 10 месяцев назад
Got the same error. Could you tell me how did you fixed it?
@anusree2347
@anusree2347 10 месяцев назад
​@@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
@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 !
@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:
@stoicpoetrywisdom
@stoicpoetrywisdom Год назад
How much would it cost to deploy this to AWS ?
@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 2 года назад
@@SanjeevThiyagarajan Did you ever upload this? I can't find it on the github repo. Thanks
@logan0501
@logan0501 2 года назад
What pem file bro
@SH-lt2iv
@SH-lt2iv 3 года назад
MERN project next please.
@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?
@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 ☺️
@TheRastishopper
@TheRastishopper 8 месяцев назад
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 7 месяцев назад
how to do it pm2 thing?
@logeshs5412
@logeshs5412 7 месяцев назад
whether it is enough to restart pm2?
@dan6054
@dan6054 3 года назад
1:35:24 "No don't send me email" LEGEND
@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
@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?
@greykor140
@greykor140 3 года назад
Does deploying something like this cost money?
@code22id20
@code22id20 2 года назад
yes bro 1 $
@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 👍
@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 5 месяцев назад
Thank you, was wondering for hours why it wasn't working
Далее