Maison  >  Article  >  Opération et maintenance  >  Comment utiliser nginx et docker pour implémenter un équilibrage de charge simple

Comment utiliser nginx et docker pour implémenter un équilibrage de charge simple

WBOY
WBOYavant
2023-05-14 18:04:06860parcourir

Étapes du test :

1. Construisez un serveur nginx dans le serveur et démarrez-le. Veuillez vous référer au processus spécifique, qui ne sera pas établi ici#. 🎜🎜##🎜🎜 #2. Extrayez l'image officielle de nginx de la source dans docker, docker pull nginx, conservez-la pour une utilisation ultérieure

3. créé-les dans /mydata/ test1,/mydata/test2/

4 Créez un nouveau index.html dans les deux dossiers de test pour les marquer. La sortie est nginx1 dans le premier code HTML et la sortie dans le second. html. c'est nginx2,

5 Exécutez les conteneurs des deux serveurs nginx via Docker et mappez les répertoires statiques aux répertoires que nous venons de créer

[root@catchtouch test2]# docker run --name nginx-test -d -p 8080:80 -v /mydata/test1:/usr/share/nginx/html nginx #第一个,将8080端口映射到容器中的80端口
[root@catchtouch test2]# docker run --name nginx-test1 -d -p 8081:80 -v /mydata/test2:/usr/share/nginx/html nginx #第二个,将容器中的8081端口映射到容器中的80端口

.

Comment utiliser nginx et docker pour implémenter un équilibrage de charge simple6. Modifiez le fichier de configuration nginx dans la machine hôte

Ajoutez le code suivant dans http{}

upstream myweb { #myproject为自定义名字

  #ip_hash; #开启则代表用ip地址的形式来分配,可解决sesson问题
   server 127.0.0.1:8080 weight=1; #weight越大,权重越高,被分配的几率越大
   server 127.0.0.1:8081 weight=1; #我全部在本机,因此用了本地的ip,只要相应换成对应的ip或者域名即可
}

7. Répertoire, modifiez default.conf (il n'y a pas de fichier de ce type dans conf.d, vous pouvez en créer un nouveau, le nom du fichier est arbitraire, le suffixe doit être .conf)

 location / {  
   #如果服务器要获取客户端真实ip,可以用下三句设置主机头和客户端真实地址
   #proxy_set_header host $host;
   #proxy_set_header x-real-ip $remote_addr;
   #proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;

   root  /usr/share/nginx/html;
   index index.html index.htm;
   proxy_pass http://myweb; #myweb为之前在nginx.conf中upstream后定义的名字
 }

8. quittez, redémarrez le serveur : systemctl restart nginx#🎜 🎜#

9. Entrez le nom de domaine actuel via le navigateur et actualisez la page. Parfois, nginx1 est affiché et parfois nginx2 est affiché. La configuration est réussie

.

À ce stade, une configuration simple du modèle d'équilibrage de charge est terminée#🎜 🎜#

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer