Sommaire
Guide détaillé
Étape 1
Mettre la base au propre
Avant Nginx, vérifiez la distribution et appliquez les mises à jour. Cela évite de diagnostiquer un service neuf sur un système déjà incohérent.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Mettre la base au propre" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Installer et tester un serveur web
Sur Debian ou Ubuntu, Nginx est un choix simple pour exposer une page, un reverse proxy ou une application HTTP.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
systemctl status nginx --no-pager
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `curl` teste une URL depuis la machine elle-même.
Commandes adaptées Debian / Ubuntu
Sur Debian ou Ubuntu, apt installe Nginx depuis les dépôts officiels et systemd active le service.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau novice : lancez les commandes une par une. Si une commande affiche une erreur, arrêtez-vous et lisez le message avant de continuer.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `curl -I http://127.0.0.1` doit répondre avec un code HTTP attendu.
- Le certificat HTTPS doit se renouveler automatiquement si vous exposez le service publiquement.
Étape 2
Installer depuis les dépôts
Utilisez les paquets de la distribution pour profiter des mises à jour de sécurité normales. Pour un premier serveur web, la simplicité vaut mieux qu’un dépôt exotique.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Mettre à jour proprement les paquets
La mise à jour réduit les bugs connus avant installation. Sur un service en production, faites cette étape pendant une fenêtre prévue.
sudo apt update
sudo apt list --upgradable
sudo apt upgrade -y
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt list --upgradable` montre les paquets qui seraient mis à jour.
- `apt upgrade` applique les mises à jour disponibles sur Debian/Ubuntu.
Installer et tester un serveur web
Sur Debian ou Ubuntu, Nginx est un choix simple pour exposer une page, un reverse proxy ou une application HTTP.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
systemctl status nginx --no-pager
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `curl` teste une URL depuis la machine elle-même.
Commandes adaptées Debian / Ubuntu
Sur Debian ou Ubuntu, apt installe Nginx depuis les dépôts officiels et systemd active le service.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau novice : lancez les commandes une par une. Si une commande affiche une erreur, arrêtez-vous et lisez le message avant de continuer.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `curl -I http://127.0.0.1` doit répondre avec un code HTTP attendu.
- Le certificat HTTPS doit se renouveler automatiquement si vous exposez le service publiquement.
Étape 3
Vérifier le service, pas seulement le paquet
Un paquet installé ne veut pas dire que Nginx répond. Contrôlez l’état du service, son démarrage automatique et le port d’écoute.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Contrôler un service systemd
systemd donne l’état réel du service, son démarrage automatique et les journaux utiles au diagnostic.
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 100 --no-pager
Ce que font les commandes
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Installer et tester un serveur web
Sur Debian ou Ubuntu, Nginx est un choix simple pour exposer une page, un reverse proxy ou une application HTTP.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
systemctl status nginx --no-pager
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `curl` teste une URL depuis la machine elle-même.
Commandes adaptées Debian / Ubuntu
Sur Debian ou Ubuntu, apt installe Nginx depuis les dépôts officiels et systemd active le service.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau novice : lancez les commandes une par une. Si une commande affiche une erreur, arrêtez-vous et lisez le message avant de continuer.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `curl -I http://127.0.0.1` doit répondre avec un code HTTP attendu.
- Le certificat HTTPS doit se renouveler automatiquement si vous exposez le service publiquement.
Étape 4
Remplacer la page par un repère clair
Une page de test avec le nom du service et la date évite de confondre cache navigateur, mauvais conteneur ou ancienne page.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Installer une page web de contrôle
Cette page simple permet de distinguer un problème Nginx d’un problème DNS, proxy ou pare-feu.
sudo apt update
sudo apt install -y nginx
printf '<h1>OK Newscloud</h1>\n' | sudo tee /var/www/html/index.html
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Installer et tester un serveur web
Sur Debian ou Ubuntu, Nginx est un choix simple pour exposer une page, un reverse proxy ou une application HTTP.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
systemctl status nginx --no-pager
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `curl` teste une URL depuis la machine elle-même.
Commandes adaptées Debian / Ubuntu
Sur Debian ou Ubuntu, apt installe Nginx depuis les dépôts officiels et systemd active le service.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau novice : lancez les commandes une par une. Si une commande affiche une erreur, arrêtez-vous et lisez le message avant de continuer.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `curl -I http://127.0.0.1` doit répondre avec un code HTTP attendu.
- Le certificat HTTPS doit se renouveler automatiquement si vous exposez le service publiquement.
Étape 5
Préparer la suite
Une fois HTTP validé, vous pouvez ajouter domaine, reverse proxy ou HTTPS. Ne passez pas à l’étape suivante tant que la base ne répond pas clairement.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Préparer la suite" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Installer et tester un serveur web
Sur Debian ou Ubuntu, Nginx est un choix simple pour exposer une page, un reverse proxy ou une application HTTP.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
systemctl status nginx --no-pager
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `curl` teste une URL depuis la machine elle-même.
Commandes adaptées Debian / Ubuntu
Sur Debian ou Ubuntu, apt installe Nginx depuis les dépôts officiels et systemd active le service.
sudo apt update
sudo apt install -y nginx
sudo systemctl enable --now nginx
curl -I http://127.0.0.1
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `curl` teste une URL depuis la machine elle-même.
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau novice : lancez les commandes une par une. Si une commande affiche une erreur, arrêtez-vous et lisez le message avant de continuer.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `curl -I http://127.0.0.1` doit répondre avec un code HTTP attendu.
- Le certificat HTTPS doit se renouveler automatiquement si vous exposez le service publiquement.
Checklist finale
- Paquets à jour
- Nginx actif
- Page de test visible