


Guide détaillé du déploiement conteneurisé et de la gestion de cluster du serveur Nginx
Guide détaillé du déploiement conteneurisé et de la gestion de cluster du serveur Nginx
Introduction :
Avec le développement du cloud computing et de la technologie des conteneurs, le déploiement conteneurisé est devenu un moyen courant de développement et de déploiement d'applications d'entreprise. En tant que serveur Web hautes performances et serveur proxy inverse, Nginx peut également être déployé et géré via la conteneurisation. Cet article présentera en détail comment conteneuriser le serveur Nginx et améliorer la haute disponibilité grâce à la gestion des clusters.
1. Préparation
Tout d'abord, nous devons installer l'environnement Docker et nous assurer de démarrer le service Docker. Ensuite, nous devons écrire un fichier Dockerfile pour créer l'image Docker Nginx. Voici un exemple simple de Dockerfile :
FROM nginx:latest COPY nginx.conf /etc/nginx/nginx.conf COPY default.conf /etc/nginx/conf.d/default.conf EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
Ce Dockerfile sélectionne d'abord la dernière image Nginx comme image de base, puis copie le fichier de configuration Nginx et le fichier de configuration de l'hôte virtuel par défaut que nous avons préparés à l'avance. Enfin, le port 80 du conteneur est exposé et le serveur Nginx est exécuté en mode premier plan.
2. Construire l'image Docker
Après avoir préparé le fichier Docker, nous pouvons utiliser la commande docker build pour créer l'image Docker. En supposant que nous enregistrons le Dockerfile dans le répertoire actuel, nous pouvons utiliser la commande suivante pour le construire :
docker build -t my_nginx .
Cette commande construira une image Docker nommée my_nginx basée sur le Dockerfile. Une fois la construction terminée, vous pouvez utiliser la commande docker images pour afficher la liste d'images existante afin de confirmer que l'image my_nginx a été créée avec succès.
3. Exécutez un seul conteneur Nginx
Maintenant, nous pouvons créer un conteneur Nginx basé sur l'image my_nginx et l'exécuter. Vous pouvez utiliser la commande docker run pour effectuer cette opération :
docker run -d -p 80:80 my_nginx
Cette commande exécutera un nouveau conteneur Nginx en arrière-plan et mappera le port 80 du conteneur au port 80 de l'hôte. Vous pouvez vérifier si le serveur Nginx fonctionne correctement en accédant à http://localhost via votre navigateur.
4. Construire un cluster Nginx
Afin d'améliorer la haute disponibilité du serveur Nginx, nous pouvons utiliser l'outil de gestion de cluster de Docker pour créer un cluster Nginx. Dans cet article, nous utilisons Docker Swarm pour implémenter la gestion des clusters.
Tout d'abord, nous devons initialiser un nœud de gestion Swarm. Le nœud actuel peut être défini comme nœud de gestion Swarm en exécutant la commande suivante :
docker swarm init
Ensuite, nous pouvons créer deux nœuds de travail (hôtes) en exécutant la commande suivante :
docker swarm join-token worker
Après avoir exécuté la commande ci-dessus, une sortie similaire à ce qui suit sera généré :
docker swarm join --token xxxxxxxxxxxxxxxx
Nous devons utiliser cette sortie pour joindre les deux nœuds de travail au cluster Swarm :
docker swarm join --token xxxxxxxxxxxxxxxx
De cette façon, nous avons ajouté avec succès les deux nœuds de travail au cluster Swarm. Ensuite, nous devons créer un service Nginx. Vous pouvez utiliser la commande suivante pour créer un service Nginx :
docker service create --name nginx --replicas 3 -p 80:80 my_nginx
Cette commande créera un service nommé nginx dans le cluster et spécifiera 3 réplicas. Le service crée et distribue automatiquement ces réplicas sur différents nœuds du cluster, créant ainsi un cluster Nginx. Vous pouvez utiliser la commande docker service ls pour afficher tous les services du cluster et leur état.
5. Opérations de gestion de cluster
Une fois que nous avons établi le cluster Nginx, nous pouvons effectuer certaines opérations de gestion de cluster de base.
- Extension et réduction
L'expansion et la réduction du service Nginx peuvent être réalisées grâce aux commandes suivantes :
docker service scale nginx=5 docker service scale nginx=2
La première commande augmente le nombre de répliques du service nginx à 5, et la deuxième commande augmente le nombre de répliques réduites à 2.
- Mise à jour du service
Lorsque nous devons mettre à jour l'image ou le fichier de configuration Nginx, nous pouvons utiliser la commande suivante pour mettre à jour le service :
docker service update --image my_nginx:latest nginx
Cette commande mettra à jour l'image du service nginx vers la dernière version. De même, nous pouvons également mettre à jour d'autres paramètres de configuration du service via la commande docker service update.
- Gestion de l'évolutivité du service
Vous pouvez afficher et gérer l'évolutivité du service via les commandes suivantes :
docker service ps nginx docker service inspect --pretty nginx
La première commande affichera l'état et les informations de toutes les copies du service nginx, et la deuxième commande affichera le Service nginx Informations détaillées, y compris l'allocation des nœuds et l'état d'exécution des répliques, etc.
Conclusion :
En conteneurisant le serveur Nginx pour le déploiement et la gestion du cluster, nous pouvons obtenir une disponibilité et une flexibilité plus élevées. Cet article présente en détail l'utilisation de Docker pour créer des images Nginx, exécuter un seul conteneur et utiliser Docker Swarm pour créer et gérer des clusters Nginx. J'espère que les lecteurs pourront en apprendre davantage sur le déploiement de conteneurs Nginx et la gestion de cluster grâce à cet article, et pourront les appliquer et les développer dans des scénarios réels.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment confirmer si Nginx est démarré: 1. Utilisez la ligne de commande: SystemCTl Status Nginx (Linux / Unix), netStat -ano | Findstr 80 (Windows); 2. Vérifiez si le port 80 est ouvert; 3. Vérifiez le message de démarrage NGINX dans le journal système; 4. Utilisez des outils tiers, tels que Nagios, Zabbix et Icinga.

Dans Linux, utilisez la commande suivante pour vérifier si Nginx est démarré: SystemCTL Status Nginx Juges Basé sur la sortie de la commande: si "Active: Active (Running)" s'affiche, Nginx est démarré. Si "Active: Inactive (Dead)" est affiché, Nginx est arrêté.

Étapes pour démarrer Nginx dans Linux: Vérifiez si Nginx est installé. Utilisez SystemCTL Start Nginx pour démarrer le service NGINX. Utilisez SystemCTL Activer Nginx pour activer le démarrage automatique de Nginx au démarrage du système. Utilisez SystemCTL Status Nginx pour vérifier que le démarrage est réussi. Visitez http: // localhost dans un navigateur Web pour afficher la page de bienvenue par défaut.

Comment configurer Nginx dans Windows? Installez Nginx et créez une configuration d'hôte virtuelle. Modifiez le fichier de configuration principale et incluez la configuration de l'hôte virtuel. Démarrer ou recharger nginx. Testez la configuration et affichez le site Web. Activer sélectivement SSL et configurer les certificats SSL. Définissez sélectivement le pare-feu pour permettre le trafic Port 80 et 443.

Comment corriger l'erreur interdite Nginx 403? Vérifier les autorisations de fichier ou de répertoire; 2. Vérifier le fichier .htaccess; 3. Vérifiez le fichier de configuration NGINX; 4. Redémarrer Nginx. D'autres causes possibles incluent les règles de pare-feu, les paramètres de Selinux ou les problèmes d'application.

Les méthodes pour afficher l'état en cours d'exécution de Nginx sont: utilisez la commande PS pour afficher l'état du processus; Afficher le fichier de configuration Nginx /etc/nginx/nginx.conf; Utilisez le module d'état NGINX pour activer le point de terminaison d'état; Utilisez des outils de surveillance tels que Prometheus, Zabbix ou Nagios.

Le démarrage d'un serveur Nginx nécessite différentes étapes en fonction des différents systèmes d'exploitation: Système Linux / Unix: Installez le package NGINX (par exemple, en utilisant Apt-Get ou Yum). Utilisez SystemCTL pour démarrer un service NGINX (par exemple, sudo systemctl start nginx). Système Windows: téléchargez et installez les fichiers binaires Windows. Démarrer Nginx à l'aide de l'exécutable Nginx.exe (par exemple, nginx.exe -c conf \ nginx.conf). Peu importe le système d'exploitation que vous utilisez, vous pouvez accéder au serveur IP

Il existe deux façons de résoudre le problème du domaine transversal NGINX: modifiez les en-têtes de réponse transversale: ajoutez des directives pour autoriser les demandes de domaine croisé, spécifier des méthodes et des en-têtes autorisés et définir le temps du cache. Utilisez le module CORS: Activez les modules et configurez les règles CORS pour permettre des demandes, des méthodes, des en-têtes et du temps de cache.
