Deploy Node app on AWS EC2 Amazon Linux 2

Поділитися
Вставка
  • Опубліковано 11 гру 2024

КОМЕНТАРІ • 110

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

    Just wanted to say, I have had to gone through this process over a dozen times and I always come back to this video and the nginx set up. Your awesome. Thank you!

  • @JBeique
    @JBeique 2 роки тому +1

    There are tutorial videos, and then there's this tutorial video, which is a tutorial video about deploying Node on an AWS EC2 instance. Great work!

  • @FreeTime-0000
    @FreeTime-0000 2 роки тому +1

    It's a best video and it's really works smooth I read hundred of documents but I didn't understand how to host but, after seeing your video I understand easily and I host a node app think you very very much I love you............... Keep doing it

  • @souravdutta5703
    @souravdutta5703 2 роки тому +4

    Didn't know Edge left WWE and became a software developer 😉😉Nice explanation btw

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

    This makes sense now. Was always trying to create EC2 but stuck at terminal termination, app used to stop always. Thanks man!

  • @RolandAyala
    @RolandAyala 2 роки тому +1

    Hi Sam, great stuff. I've decided to ween myself off of beanstalk and find your videos to be concise, informative, and easy to follow. Thank you!!

  • @kaliteliyazlmc1376
    @kaliteliyazlmc1376 2 роки тому +2

    Thanks bro! I solved a problem about ec2 I was facing thanks to your video (I forgot to add TCP port rule to security groups) Keep making such good content!!!

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

    Hey, sam. Thanks for this amazing video, and also the article!

  • @talatkuyuk6556
    @talatkuyuk6556 3 роки тому

    Hey, welcome to come back again, after 5 months. Nice to see this video, since I have developed a Nodejs app (TDD with using jest and superset inspiring your tutorials), I was thinking how to deploy and where, and see this video. Very happy.

  • @shahzadasalman8461
    @shahzadasalman8461 2 роки тому

    thank you so much, loved your tutorial and you definitely deserve more views and subscribers for your effort

  • @ayush612
    @ayush612 2 роки тому +2

    Thank you sir for this awesome tutorial. Exactly what I needed!!

  • @subhashgn1775
    @subhashgn1775 2 роки тому +1

    Sooper useful.👌👌
    Very great resource video.

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

    thanks bro, had trouble when i couldn't use dotenv

  • @magoQuijote
    @magoQuijote 2 роки тому +1

    You are the best Sam! Like

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

    thank you, this has been so incredibly helpful

  • @alexciotor
    @alexciotor 2 роки тому

    "First Try... That doesn't always happen" soooo true.. so funny and painful at the same time :)))

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

    my sincere gratitude, fam. 🙏🙏

  • @deepfuchsia7204
    @deepfuchsia7204 2 роки тому

    Many thanks for sharing your knowledge. It was explained in a very chill and understandable manner. Good shit bro.

  • @asaflevy9387
    @asaflevy9387 2 роки тому +1

    Clear and concise. Thank you!

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

    learned so much from this video, subscribed

  • @brunohlnp
    @brunohlnp 2 роки тому +2

    I reproduce the results of your video. I am not able to use the systemd command to turn the web app into a always-up service. In fact, after starting the pulled repository content (which goes fine hosted locally), its status is (code=exited, status=1/FAILURE). Do you have some idea how to debug this issue?

  • @node_python_lover454
    @node_python_lover454 2 роки тому

    Thank you very much!
    Your video saved me a lot of time!

  • @TheObelisc10
    @TheObelisc10 2 роки тому

    Sir. I love you. Thank you for this amazing video. Helped me get my project of the ground.

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

    super greate video! thanks a lot. keep doing great work

  • @gtnasser
    @gtnasser 2 роки тому

    Great job. Nice tutorial, easy for undertanding.

  • @dinyairsadot9910
    @dinyairsadot9910 2 роки тому

    You're a life saver man! Great video

  • @74Bagas
    @74Bagas 2 роки тому

    wow, just right on !! subscribed.... now let me binge watch, thank you.
    - i wish i found this channel earlier 😆, anyway never too late, let's go do some devops sht.

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

    thank you so much for this tutorial, this really help me a lot

  • @markbarlescu1853
    @markbarlescu1853 2 роки тому +1

    thanks so much for this video !

  • @aliceg.2629
    @aliceg.2629 6 місяців тому

    Note for myself:
    Need to get back to 1:02 when deploying our node App

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

    nice video! it worked perfectly! I have 2 questions though...
    1. Why didnt you use CodeDeploy?
    2. How would you integrate this method in a pipeline?

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

    Thanks dude it was amazingly simple and easy

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

    If you are using NVM, then /usr/bin/node WILL NOT WORK
    you have to use "nvm which " then replace /usr/bin/node with the actual path in the service file
    other than that 10/10 vid subbed

  • @ponmaniraja9576
    @ponmaniraja9576 3 роки тому

    Hi Sorry That was my mistake. Here I didn't Stop node server.js in my terminal. It is wokring After stopped the Terminal node server.js. Thanks Really is helping ur videos.

  • @DaveH28
    @DaveH28 2 роки тому

    This is brilliant tutorial - I had my server al working with systemd until I changed from require(http) to using express

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

    Very useful. Thank you.

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

    Is there a more efficient way of handling env variables?

  • @SportsMoments697
    @SportsMoments697 3 роки тому +2

    Also, if you have the error: "Error: listen EADDRNOTAVAIL", Be sure to use the private IPv4 address of your EC2 instance in your node app in order to properly establish connection.
    And to test things, use the public one as shown in the video
    Again, great tutorial btw ^__^

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

    do I always have to have my terminal open after starting nodej server? like node server.js

  • @rune1327
    @rune1327 2 роки тому

    This is extremely useful.

  • @f19-x9k
    @f19-x9k Рік тому

    awesome tutorial =D

  • @akashjohirul9409
    @akashjohirul9409 2 роки тому

    How do we update to the new code? LIke if we make any changes in github how will we update it in the server also?

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

    add the security bound of http and while accessing the pubilc ip address change it from https -> http

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

    does this work in docker image i have docker image of my project in ec2 wwith jenkins

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

    Hi.. How can we get sample project replace with our build code

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

    do I need to have webserver running on ec2?

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

    hello brother,
    I have a question where I can find the .env file in node js ec2 AWS ubuntu instance and how I can update it

  • @mrandersoncga
    @mrandersoncga 2 роки тому

    Thanks for sharing!

  • @chzappsdevelopers737
    @chzappsdevelopers737 2 роки тому

    Love you!!!

  • @jez6241
    @jez6241 2 роки тому

    This tutorial is awesome! Is there a part 3?

  • @isandozi
    @isandozi 2 роки тому +2

    Hey Sam, great tutorial. Thanks for the work. I had a question, I’m trying to set environment variables in a way where they are not on the actual EC2 instance but in a CI CD pipeline on Azure Devops. In order to set those, do I need to alter the actual in any way?

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

    I followed the steps to host a website but when i am hosting i'm unable to render the images. Please help me out guys

  • @regancloper
    @regancloper 3 роки тому +1

    Is there a reason you don’t want to run the node app on the same EC2 instance as the MySQL DB instance from your prior video? Many of the other tutorials I saw run both node app and DB on same instance.

    • @SamMeechWard
      @SamMeechWard  3 роки тому +5

      Having everything on one instance is fine for a small app, but it makes it impossible to horizontally scale your application. Separating out everything like this makes horizontal scaling very easy.

  • @thisgoogleaccount5009
    @thisgoogleaccount5009 2 роки тому

    My EC2 instance doesn't seem to have yum installed and I am having trouble installing it. Why do these things have to be such a pain, also in the security group there seems to be 2 options for "anywhere", anwhere ipv4 and anywhere ipv6. Does that mean I have to make 2 security groups for both of those destinations?

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

    hey sam,
    Can you make a video tutorial on AWS x-ray integration with node app in ECS and trace all requests via Xray console.

  • @심장-k9d
    @심장-k9d 2 роки тому

    I used NVM and Am I same the .service script?

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

    Hello, Thanks for the video. I tried creating some routes using express but I can’t get a way around on ec2 . It fails with a Error called Cannot Get /routeName. Is there any workaround to get this done?

  • @orangekitty5192
    @orangekitty5192 2 роки тому

    Great videos!

  • @timmyfrank3
    @timmyfrank3 2 роки тому

    Good video thank you

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

    can this also work for Mongo Db

  • @allysantoro6378
    @allysantoro6378 3 роки тому

    how do i tell it to update my server.js file? It's not updating

  • @thegrantkennedy
    @thegrantkennedy 2 роки тому +1

    Great tutorial Sam. I got a question tho. I followed along, created a systemd service using your script, changed the directories to match my own but when I try to run it, it fails with error code 1. My code runs fine if I run npm start. What could be causing this?

    • @SamMeechWard
      @SamMeechWard  2 роки тому +2

      Make sure you use the absolute path to the executable ExecStart like /home/ec2-user/whatever/script.js
      Try running the ExecStart code directly in the command line and make sure that works
      /usr/bin/node /home/ec2-user/whatever/script.js
      If you have an EnvironmentFile, make sure that's the correct absolute path

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

    Git validation?

  • @haseebullah9204
    @haseebullah9204 2 роки тому

    hi , I just followed your tutorial but I am unable to access the test or any route, even the nodejs app is running "This site can’t be reached" is being displayed. need help regarding this ..

    • @SamMeechWard
      @SamMeechWard  2 роки тому

      If you can't connect to the site, it might be an issue with the security group and port number. Make sure your port number is correct and try opening up your security group to allow traffic on all ports to see if that helps.

  • @TheEnigma9000
    @TheEnigma9000 2 роки тому

    I can’t find the node app you’re using on your GitHub. Which is it?

    • @SamMeechWard
      @SamMeechWard  2 роки тому

      github.com/sam-meech-ward-bcit/lotr

  • @rololop34
    @rololop34 2 роки тому

    Great tutorial. Where can I learn more about linux server administration for web development like you showed us? Did you learn it by doing or is there a tutorial for this kind of stuff because I cannot find a good one.

    • @SamMeechWard
      @SamMeechWard  2 роки тому +1

      I learned this stuff by reading some books, reading the docs, reading some articles, watching some videos, and trying over and over again until I got it right. You just gotta keep going, keep trying, keep reading and watching and don't give up until you've figured out how to do the thing you're doing.

  • @Alidrkk07
    @Alidrkk07 2 роки тому

    Thanksss !!!!!!!!

  • @vortextraininggroup9243
    @vortextraininggroup9243 2 роки тому

    Hi,
    I am currently running into some issues using lightsail and the forever script. The systemD that you spoke of. Would that work within lightsail aswell?

  • @andrewndotela7407
    @andrewndotela7407 2 роки тому

    Hello @Sam Meech-Ward, We're enjoying so much with everything you're giving to this channel,
    would you please make a tutorial on how to deploy laravel app on linux aws, it seems to have many confusing configurations

  • @MrVicmg11
    @MrVicmg11 2 роки тому

    cool video!

  • @michaelpoon3083
    @michaelpoon3083 2 роки тому

    I saw my service status is active, but I can't load my web page... is there something wrong?

    • @michaelpoon3083
      @michaelpoon3083 2 роки тому

      it appears code: 'ERR_INVALID_ARG_TYPE' in the var/log/messages

  • @halituzan
    @halituzan 2 роки тому

    Hi Sam, I can't thank you enough for this tutorial video. There is a point that I cannot overcome, if you can help me, I will be very happy, even if you just show me the way, it is enough.
    I am creating a cookie token in my code structure and while this cookie token creation process works very well on my local server, ec2 does not work and generates the token, but it does not set the cookie, I could not understand why.

  • @ahmedalobed7382
    @ahmedalobed7382 2 роки тому

    when i run my project this error occur
    [722:0x4dede40] 13621 ms: Scavenge 468.9 (479.1) -> 468.5 (479.6) MB, 5.4 / 0.0 ms (average mu = 0.358, current mu = 0.415) allocation failure
    [722:0x4dede40] 14106 ms: Mark-sweep (reduce) 469.4 (479.6) -> 469.1 (479.4) MB, 342.1 / 0.0 ms (+ 61.5 ms in 12 steps since start of marking, biggest step 18.3 ms, walltime since start of marking 422 ms) (average mu = 0.271, current mu = 0.192) alloc
    FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
    1: 0xb02960 node::Abort() [node]
    2: 0xa18149 node::FatalError(char const*, char const*) [node]
    3: 0xcdd22e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]
    4: 0xcdd5a7 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]
    5: 0xe94c15 [node]
    6: 0xea48dd v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]
    7: 0xea75de v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
    8: 0xe68b1a v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [node]
    9: 0x11e1886 v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [node]
    10: 0x15d54f9 [node]
    Aborted

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

    Awesome video ++++++++++++++++++ 🙂

  • @MoR555777
    @MoR555777 2 роки тому

    Hey Sam!
    Your videos are super helpful, thx!
    I have one question please 🙏🏻
    when I tryed to set up the db to the server machine Using the environment variables I got this error “MYSQL_HOST: command not found”.
    * I have the .env file (and insert it to the gitignore like I should) with the environment variables like yours.
    * looked for the error but couldn’t find anything helpful.
    Do you know what the problem can be?

    • @SamMeechWard
      @SamMeechWard  2 роки тому +1

      Did you add the environment variables file path to the systemd file?

    • @MoR555777
      @MoR555777 2 роки тому

      @@SamMeechWard Yes. The problem was a spare whitespace at the terminal 😅 Thank you! Your videos are super helpful!

  • @nazarenofernandez1509
    @nazarenofernandez1509 2 роки тому

    I love you!

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

    thanks alot

  • @411sev
    @411sev Рік тому

    Thanks

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

    why not just use NVM ?

  • @vicnguyen9312
    @vicnguyen9312 2 роки тому

    Did you forget to install npm on linux machine?

  • @Antiilitratepeople
    @Antiilitratepeople 2 роки тому

    variable in clear instead of in the secret manager!!! Not so safe.

    • @SamMeechWard
      @SamMeechWard  2 роки тому

      Safe enough and ferric enough to work on any Linux and cloud environment. But secret manager makes encryption and managing secrets and rotations and other things easier, but it costs money and you have to learn how to use that service correctly

  • @programmer9809
    @programmer9809 8 місяців тому +1

    👍

  • @warpspeed8305
    @warpspeed8305 2 роки тому

    Why 8080 and not 80?

    • @SamMeechWard
      @SamMeechWard  2 роки тому +1

      because only privileged applications can access privileged ports like 80 and your web app should NOT be privileged

  • @nwigweuzochukwu6089
    @nwigweuzochukwu6089 3 роки тому

    My keypair isn't accessible

  • @ikramkhaldoun5486
    @ikramkhaldoun5486 2 роки тому

    thanx

  • @DuyTran-ss4lu
    @DuyTran-ss4lu 2 роки тому

    cool

  • @arvinlorenz
    @arvinlorenz 2 роки тому

    HI Sam.. Thank you for the tutorial. I just have a question. When I use Https to create connection, the systemd service is not working anymore.
    https
    .createServer(
    {
    key: privateKey,
    cert: certificate,
    },
    app
    )
    .listen(process.env.PORT || 8443)
    Will I change something from the systemd service?