Це відео не доступне.
Перепрошуємо.

Auto Deploy Nodejs Rest API on AWS EC2 | CI/CD pipeline using GitHub Actions

Поділитися
Вставка
  • Опубліковано 25 тра 2023
  • Hello everyone! In this video, we will set up automatic deployment of Nodejs Rest API on AWS EC2 instance using GitHub Actions
    The API was built using Express ( Node.js framework ) and MongoDB Atlas which is a NoSQL cloud database platform.
    You'll learn How to:
    ➤ Login to the AWS console and create an EC2 instance
    ➤ Setup GitHub Repo and Push your project
    ➤ Login to EC2 instance using Windows Powershell as well as PuTTY
    ➤ Setup GitHub Action runner on the EC2 instance
    ➤ Create GitHub Secrets for managing environment variables
    ➤ Create CI/CD Workflow using GitHub Action
    ➤ Install nodejs and nginx on the EC2 instance
    ➤ Install pm2, a process manager for Node.js production applications
    ➤ Configure nginx and how to restart it
    ➤ Run backend node.js rest api built using the express framework in the background as a service using pm2
    ➤ Add the command in yml script of the project to restart the nodejs api server after every push to the repo
    ➤ Support me by COMMENT, LIKE, SUBSCRIBE, and SHARE
    ➤ Channel link - / @webwizard8
    ➤ Music Licence:
    Song: Atch - Freedom
    Music provided by Vlog No Copyright Music.
    Creative Commons - Attribution 3.0 Unported
    Video Link: • Atch - Freedom (Vlog N...
    Song: Hotham - Find
    Music provided by Vlog No Copyright Music.
    Creative Commons - Attribution 3.0 Unported
    Video Link: • Hotham - Find (Vlog No...
    Song: LiQWYD - Sweet
    Music provided by Vlog No Copyright Music.
    Creative Commons - Attribution 3.0 Unported
    Video Link: • LiQWYD - Sweet (Vlog N...
    Song: LiQWYD - We've Got Time
    Music provided by Vlog No Copyright Music.
    Creative Commons - Attribution 3.0 Unported
    Video Link: • LiQWYD - We've Got Tim...
    #autodeploy #nodejsrestapi #awsec2 #cicd #githubactions #restapideployment #nodejsdevelopment #awsec2deployment #githubactionstutorial #nodejsexpress #deployrestapionec2 #awsec2cicd #githubactionspipeline #restapiawsec2 #deployrestapi #cicdpipeline

КОМЕНТАРІ • 90

  • @webwizard8
    @webwizard8  Рік тому

    GitHub Repo - github.com/kalyansaxena/nodejs-restapi-ec2
    GitHub Actions - github.com/features/actions
    AWS Management Console - aws.amazon.com/console/

  • @pulsechainalltheway1845
    @pulsechainalltheway1845 Місяць тому +2

    This is amazing, I have been looking for a video that properly explains the whole process of deploying a Nodejs app with a CI/CD pipeline using GitHub actions. Thanks a lot.

  • @uvaishassan
    @uvaishassan 10 місяців тому +2

    I spent hours searching for help on this exact thing, this was the only video that left me satisfied. Thanks for the video

    • @webwizard8
      @webwizard8  10 місяців тому +1

      I'm glad that the video met your needs and left you satisfied! Your kind feedback motivates me to create more content. Thanks for watching and for your support! 😊

  • @shyam-bh
    @shyam-bh 5 місяців тому +1

    After researching and viewing so many resources, this is what i was looking for, thank you so much for this video. Keep posting such videos.

  • @breezycodes
    @breezycodes 6 місяців тому +1

    Wow.. i have been doing env variable loading wrong all along 😂😂😂.
    Thank you. I never thought about doing it this way

  • @user-xe3lf3cx1q
    @user-xe3lf3cx1q Місяць тому

    This is the best video i have ever seen on this topic keep growing brother

  • @zackOverflow
    @zackOverflow 3 місяці тому +1

    WOW!!! You are the best man!. Thank you so much, you nailed it.

  • @MayankMishra-oy5xe
    @MayankMishra-oy5xe 6 місяців тому +1

    Very well structured and clean explanation. Please do continue to make these kind of videos. Good luck. You got a subscriber !

  • @tuphamanh9766
    @tuphamanh9766 22 дні тому

    nice tutorial video, helped me understand this concept alot

  • @amardeep6088
    @amardeep6088 Рік тому +1

    It was the best video ever for this. I followed every step of yours. whenever I have to modify something according to my need I just ask chat-gpt. Thanks a lot!

    • @webwizard8
      @webwizard8  Рік тому

      Thank you for your kind words!! I'm really happy that it helped you!

  • @nehjain
    @nehjain Місяць тому

    Great Video, lots of information, I was exactly looking for this! 😍

  • @shehzadali6713
    @shehzadali6713 День тому

    Thanks, Amazingly explained man
    Could you please make a video on eks , load balancing nodejs ci CD pipeline

  • @iayushch
    @iayushch Місяць тому

    Thankyou so much brother. you are own, you saved my lots of time

  • @patshalaaa
    @patshalaaa Місяць тому

    Awesome bhaii.....subscribed

  • @soburalasu6736
    @soburalasu6736 23 дні тому

    Thank you my friend. You saved my job

  • @__mas
    @__mas Рік тому +1

    Very clear explanation - well done and thank you!

    • @webwizard8
      @webwizard8  Рік тому

      Thank you, Glad it was helpful!

  • @altairfarooque8663
    @altairfarooque8663 3 місяці тому

    Thank you very much ,for sharing this content . It saved me lot of time and have gained lot of knowledge.

  • @user-do8bu3jf4x
    @user-do8bu3jf4x Рік тому

    Hi bro, Loved your explanation on this video. Thank you soo much for this content. Please make more videos, Don't stop it

  • @user-ov7nb9um8b
    @user-ov7nb9um8b 5 місяців тому

    Kudos brother. Keep up the good work.

  • @UditNagar-of5su
    @UditNagar-of5su Місяць тому

    Best Resource...Thanks sir ❤❤

  • @Infinite_Mainak
    @Infinite_Mainak 6 місяців тому +1

    Plz zoom a little bit...there r many mobile viewers... overall video is good ❤

  • @Manish___Choudhary
    @Manish___Choudhary Рік тому +3

    Loved it ❤️👍

  • @huzaifa_a4602
    @huzaifa_a4602 5 місяців тому

    Thank you, it was a wealth of knowledge. 😁😊

  • @ibadshaikh2215
    @ibadshaikh2215 Місяць тому

    Thanks alot for this amazing video!

  • @dineshindn4404
    @dineshindn4404 Місяць тому

    great work

  • @AshenSandeep-jc5iw
    @AshenSandeep-jc5iw Місяць тому

    well explained. easy to deploy ,

  • @explorinsta9645
    @explorinsta9645 3 місяці тому

    How can i have different stages for the above ?
    For example I have 2 ec2 instances and I have configured runners on both of them. One for staging and one for production.
    How can i do it?

  • @LeulDam
    @LeulDam 10 місяців тому +1

    Thank you for this, can you also show how to do this with auto scaling running multiple ec2 instances?

  • @ok.tanmay
    @ok.tanmay 3 місяці тому

    thanks for the tutorial it helped a lot

  • @MOSELEY_DEV
    @MOSELEY_DEV Місяць тому

    Thanks man!

  • @peculiarbabalola4430
    @peculiarbabalola4430 Місяць тому

    I want to understand. Why ubuntu? Is there a specific reason or prejudice?

  • @anilsaipinnelli1866
    @anilsaipinnelli1866 Рік тому

    Excellent Explanation brother

  • @AnindoSarker
    @AnindoSarker 10 місяців тому

    Thank you. Good video with good explanation

    • @webwizard8
      @webwizard8  10 місяців тому +1

      You're welcome! I'm glad you found the video and explanation good

  • @ghaitharfaoui1336
    @ghaitharfaoui1336 2 місяці тому

    can we use the same instructions on ubuntu instance ?

  • @Hrit
    @Hrit Рік тому

    Clean Explanation thanks!

  • @bishnudev1760
    @bishnudev1760 10 місяців тому +1

    Thanks for the tutorial buddy ❤ I have deployed my Express server into AWS EC2 but it’s on http port and getting security issue in Frontend. Can you please make a video on how to change it to https ? Would be helpful 😊

    • @UptimeUnicorn
      @UptimeUnicorn 9 місяців тому

      you need to install install certificate on a application load balancer, then use SSL termination. ur EC2 will get a SSL. make sure to use route53 and AWS ACM to help u

  • @king-virat-kohli
    @king-virat-kohli 5 місяців тому

    Hi, I want to store the .env values in the github secreat. And then i want them to pull them to the docker. Which i am only able to do it for the first key value pair stored in the github secreat. I can load multi values from it. Can u help me out here?

  • @Trying_hard_to_become_rich
    @Trying_hard_to_become_rich Місяць тому

    sir can we do the same process for MERN stack application deployment and if i changed the source code and again i merged with the existing code in the github means will the application already deployed in the ec2 also change simultaneously or we need to restart the server? i'm a student sir please reply for this question. And i wants to reach you personally is there any possible way to contact you?

  • @user-ti1wi9fk4w
    @user-ti1wi9fk4w 5 місяців тому

    hi great video, But how can we do this for 3 different environment ie, development, production, qa on aws

  • @user-ie7mj3cu3l
    @user-ie7mj3cu3l 6 місяців тому

    Hey I have been setuped all the things but I'm unable to connect api I'm getting 404 error
    can you help me any of one

  • @idelsoldier2825
    @idelsoldier2825 10 місяців тому +1

    I am not getting _work folder

  • @carelitos3624
    @carelitos3624 Рік тому +1

    Please how to auto deploy laravel rest API on AWS EC2 | CI/CD pipeline using github Actions and apache

  • @sc-nc6bb
    @sc-nc6bb 5 місяців тому +1

    There will be some command equivalent to docker compose -logs to see the errors of the app on the server ?

    • @webwizard8
      @webwizard8  4 місяці тому +1

      you can use PM2's built-in logging functionality to view logs. For example, you can use the "pm2 logs" command to tail the logs in real-time.

  • @Anurag_Dhrejen
    @Anurag_Dhrejen 4 місяці тому

    How to make this http api request with https

  • @manishkini9206
    @manishkini9206 7 місяців тому

    Amazing video

  • @dannysalvage6236
    @dannysalvage6236 4 місяці тому

    Thank you so much.

  • @sujjee
    @sujjee 9 місяців тому +1

    what is diff between jenkins and github actions?

    • @webwizard8
      @webwizard8  9 місяців тому +1

      Jenkins and GitHub Actions are both tools used in the continuous integration and continuous deployment (CI/CD) process.
      Jenkins is an open-source automation server that allows building, deploying, and automating projects. It's highly customizable and has been in the market for a longer time, offering a wide range of plugins and integrations.
      On the other hand, GitHub Actions is a newer offering by GitHub that is tightly integrated with the repository. It allows you to automate tasks directly from your GitHub repository. It's well-suited for projects already hosted on GitHub and simplifies the CI/CD setup with its YAML-based workflows.

  • @mohammadabid9520
    @mohammadabid9520 6 місяців тому

    Hey I have been set-up all the things as per your guideline but I'm unable to connect api, I am getting 404 error
    can you help me any of one

    • @webwizard8
      @webwizard8  6 місяців тому

      404 means not found error
      You need to verify the route has been implemented in your api

  • @WhyAlwaysMeDieFirst
    @WhyAlwaysMeDieFirst 6 місяців тому

    We neet to download Ubuntu in Laptop?

  • @franciscojosemunozgarcia6014
    @franciscojosemunozgarcia6014 8 місяців тому

    Hi
    Is it possible to create the action using other branch?

  • @OmerEtrog
    @OmerEtrog 10 місяців тому

    thank you, very helpfull

    • @webwizard8
      @webwizard8  10 місяців тому +1

      You're welcome! I'm delighted to hear that you found the video helpful. Explore the channel for more content and consider subscribing!

  • @kushagra4401
    @kushagra4401 11 місяців тому

    thanks a lot man!!

    • @webwizard8
      @webwizard8  10 місяців тому +1

      You're welcome! I'm glad you enjoyed the video. Explore the channel for more content and consider subscribing!

  • @scotly_emi
    @scotly_emi 4 місяці тому

    can you make a video on using mysql

  • @yusufkaraaslan2888
    @yusufkaraaslan2888 11 місяців тому

    Thank you so much

    • @webwizard8
      @webwizard8  11 місяців тому

      You're welcome! I'm glad you enjoyed the video. Explore the channel to find more content!

  • @larapiostech
    @larapiostech 10 місяців тому

    Thank u bro ..

    • @webwizard8
      @webwizard8  10 місяців тому

      You're welcome! Thank you for watching!

  • @zx__952
    @zx__952 Рік тому

    before i used github action and self hosted runner, i manually push my repo to my server. so currently i start using it and now i have issue where after the workflow fully deployed, the file has been changed inside _work file, but my server is running at my home directory, how to solve this?

    • @webwizard8
      @webwizard8  Рік тому

      did you configured nginx web server? see the video where I've showed nginx configuration, this might help
      the role of using github actions workflow is to clone our github repo into _work folder whenever a change made to our github main branch
      once the repo is available inside _work then its our responsibility to make use of web server like nginx and redirect requests to the localhost port
      pm2 plays role for starting and restarting your express server

    • @zx__952
      @zx__952 Рік тому

      @@webwizard8 so i have to pm2 start the nodejs file inside my _work folder? In my nginx, i configured it to detect /api/ and also my react build file that has been placed in /var/www/html, do i have to change this?

  • @alisalam4472
    @alisalam4472 Рік тому

    thanks a lot bro

    • @webwizard8
      @webwizard8  Рік тому

      You're welcome! I'm glad you enjoyed the video. Consider subscribing to the channel to get more content like this, Your support and feedback mean a lot to me!

  • @marklouiedullavin4668
    @marklouiedullavin4668 5 місяців тому

    bakit parang malungkot ka?

  • @AtomiCoding
    @AtomiCoding 3 місяці тому

    SSL kese kre bolo bhia

  • @differentfun9797
    @differentfun9797 Рік тому

    how can I start my Next.js project using pm2 command?

  • @reactjs1900
    @reactjs1900 Рік тому +2

    These runners are getting stopped after some days

    • @webwizard8
      @webwizard8  Рік тому

      Hi, Thanks for bringing up to the notice, I'd recommend going through this docs once - docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#usage-limits

    • @user-gy5gl1od1j
      @user-gy5gl1od1j 9 місяців тому

      @@webwizard8 hey I have a question if this self hosted runners and workflows are stopped after a certain time does this effect on my application which is in aws

    • @reactjs1900
      @reactjs1900 9 місяців тому

      @@user-gy5gl1od1j
      It will not affect you application, but new pushes will not be reflected there.

  • @AndranikToplaghatsyan
    @AndranikToplaghatsyan Рік тому

    Hi bro very nice video but can you help me ????
    when i on pm2 start i recive 502 gatway error message and I can't fix it,,, i dont understand it .. please help me ???

    • @webwizard8
      @webwizard8  Рік тому +1

      If nginx is having problem reaching out to the web server then you'll encounter 502 bad gateway error
      So culprit would be your express server
      make sure to run pm2 start command inside your repo folder where server.js file exists
      observe the video from 30:45 onwards

  • @tomhardy7734
    @tomhardy7734 11 місяців тому

    Could you do a video on how to implement docker for this process?

    • @webwizard8
      @webwizard8  11 місяців тому +2

      Thanks for your comment and interest in the video! I'll definitely consider creating a tutorial on implementing Docker for this process. Stay tuned for updates on my channel!

    • @tomhardy7734
      @tomhardy7734 11 місяців тому

      @@webwizard8 Sounds great, thank you!

    • @webwizard8
      @webwizard8  11 місяців тому

      @@tomhardy7734 mean time I'd recommend watching this video - ua-cam.com/video/YDNSItBN15w/v-deo.html

  • @dhineshd68
    @dhineshd68 7 місяців тому

    I want make https request how to implement that,i have a https setup in my node server,since i am developing a mobile app i used https requests