Node.js hosten op je VPS

(Draai je JavaScript-applicaties en bots op een stabiele server)

Node.js is een populaire runtime voor het bouwen van snelle en schaalbare netwerkapplicaties in JavaScript. Denk aan API's, websites en bots zoals Discord-bots.

1. Node.js installeren

  • Installeer benodigde tools:
    sudo apt update
    sudo apt install build-essential libssl-dev

  • Installeer NVM (Node Version Manager):
    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

  • Laad NVM in je sessie:
    source ~/.bashrc

  • Installeer de nieuwste LTS-versie van Node.js:
    nvm install --lts


2. Je Node.js applicatie voorbereiden

  • Upload je bestanden naar bijvoorbeeld:
    /home/gebruiker/mijn-app

  • Ga naar de map:
    cd /home/gebruiker/mijn-app

  • Installeer afhankelijkheden:
    npm install


3. Je applicatie draaiende houden met PM2

  • Installeer PM2:
    npm install pm2 -g

  • Start je app:
    pm2 start app.js --name "mijn-app"

  • Maak een startup script:
    pm2 startup
    Volg de instructies die PM2 toont

  • Sla de processen op:
    pm2 save


4. Je applicatie toegankelijk maken (Reverse Proxy)

  • Laat je Node-app luisteren op een lokale poort, bijvoorbeeld 3000

  • Stel een Nginx server block in:

    server {
      listen 80;
      server_name mijndomein.nl;

      location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
      }
    }

Samenvatting

  • Gebruik NVM om Node.js flexibel te installeren

  • Gebruik PM2 om je app stabiel en persistent te draaien

  • Gebruik Nginx om je app bereikbaar te maken via je domein


Tip: Bekijk live logs met pm2 logs en gebruik pm2 monit voor een handig dashboard van je processen.

Hulp nodig? Start je app niet? Controleer de logs met pm2 logs mijn-app. Een 502 Bad Gateway in Nginx betekent meestal dat je app niet draait op de juiste poort.

Was dit antwoord nuttig? 0 gebruikers vonden dit artikel nuttig (0 Stemmen)

Powered by WHMCompleteSolution