Débutant40 min25 XP
Objectifs de cette leçon
- Vérifier l'état d'un service
- Redémarrer un service
- Consulter les logs
- Utiliser PM2 pour les apps Node.js
Serveurs : systemd, nginx, pm2 🖥️
systemd et systemctl
systemctl list-units --type=service sudo systemctl start nginx sudo systemctl stop nginx sudo systemctl restart nginx sudo systemctl status nginx sudo systemctl enable nginx
nginx : serveur web
sudo apt install nginx sudo nano /etc/nginx/sites-available/monsite
server { listen 80; server_name monsite.com; 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; } }
sudo ln -s /etc/nginx/sites-available/monsite /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
pm2 : gestion Node.js
npm install -g pm2 pm2 start server.js --name "mon-api" pm2 list pm2 logs mon-api pm2 restart mon-api pm2 stop mon-api pm2 save pm2 startup
Résumé
| Outil | Rôle |
|---|---|
systemctl | Services système |
nginx | Reverse proxy |
pm2 | Processus Node.js |
Exercices 🎯
- Installe nginx et configure-le comme reverse proxy
- Lance une app avec pm2 et configure le démarrage auto
- Consulte les logs avec
pm2 logs
⚡ Simulateur — Serveurs
Étape 1/4📝 Pseudo-code
1systemctl status nginx
2sudo systemctl restart nginx
3sudo journalctl -u nginx --tail=20
4pm2 list
⚙️ Exécution
📦 Mémoire
Aucune variable
🔀 Flux d'exécution
systemctl status
📟 Console
● nginx.service - A high performance web server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
Active: active (running) since Thu 2025-07-17 09:00:00 UTC; 1h ago
Main PID: 1234 (nginx)
Tasks: 5 (limit: 4915)
Memory: 12.3M
CPU: 1.234s
CGroup: /system.slice/nginx.service
├─1234 nginx: master process /usr/sbin/nginx
├─1235 nginx: worker process
└─1236 nginx: worker process
3
État du service
systemctl status nginx affiche l'état du service : chargé, actif, PID principal, mémoire utilisée. green (active) = fonctionne, red (failed) = problème.