Prérequis
Avant de commencer, assurez-vous d'avoir :
- Un VPS Virtmo (KVM ou LXC) avec Ubuntu 22.04+
- Un accès SSH root ou sudo
- Un nom de domaine pointant vers l'IP de votre VPS
Étape 1 : Installer Node.js via NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 20
nvm use 20
node --version
Étape 2 : Déployer votre application
cd /var/www
git clone https://github.com/votre-repo/mon-app.git
cd mon-app
npm ci --production
Étape 3 : Configurer PM2
PM2 est un gestionnaire de processus Node.js qui assure le redémarrage automatique et le monitoring :
npm install -g pm2
pm2 start app.js --name "mon-app" -i max
pm2 startup systemd
pm2 save
L'option -i max active le mode cluster, utilisant tous les vCPU disponibles.
Étape 4 : Configurer Nginx en reverse proxy
server {
listen 80;
server_name mondomaine.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache_bypass $http_upgrade;
}
}
Étape 5 : SSL avec Let's Encrypt
apt install certbot python3-certbot-nginx
certbot --nginx -d mondomaine.com
Monitoring avec PM2
Surveillez votre application en temps réel :
pm2 monit # Dashboard temps réel
pm2 logs mon-app # Logs en streaming
pm2 status # État de tous les processus
Astuce Virtmo : combinez PM2 avec notre monitoring intégré dans le Manager pour une visibilité complète sur les performances de votre VPS.