暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

使用Docker Swarm 和 Docker Stack 快速搭建一个nginx集群【测试成功】

巴韭特锁螺丝 2023-10-08
108

一、需求背景

    存在3台服务器,使用其搭建nginx集群,用户通过3个地址都能访问配置的同一个nginx前端页面。

    服务器1:192.168.3.88(Master)

    服务器2:192.168.3.45(Node45)

    服务器3:192.168.3.47(Node47)

二、创建docker swarm集群

    创建过程:略

    创建完毕后,使用docker node ls 查看集群节点。

    使用docker info查看集群状态。

    [root@Master nginx]# docker node ls
    ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
    6gmkg2uqo4lot0do30e6l1kt6 * Master Ready Active Leader 24.0.5
    t6r9907o7p273fulmehvy8d6u Node45 Ready Active 24.0.5
    v1c606b62prsg6tin8fi294sh     Node47     Ready     Active                          24.0.5

    三、创建nginx集群服务

        编写一个docker-compose.yml文件,内容如下:

        注意:

            1)映射本地nginx.conf文件到集群nginx容器中。

            2)映射本地nginx前端程序目录文件到集群nginx容器中。

      version: '3'


      services:


      nginx:


      image: nginx:latest
      ports:
      - "80:80"
      volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - ./web:/usr/share/nginx/html
      networks:
      - nginx-network




      networks:


      nginx-network:


      定义的nginx.conf配置文件内容如下:

        events {
        worker_connections 1024;
        }


        http {
        server {
        listen 80;


        location {
        # root /docker/nginx/web;
        root /usr/share/nginx/html;
        index index.html;
        }
        }
        }


        三、部署nginx集群服务

        使用以下命令在Docker Swarm中部署服务:

        docker stack deploy -c docker-compose.yml nginx-stack

        查看集群服务状态: docker service ls

          [root@Master nginx]# docker service ls
          ID NAME MODE REPLICAS IMAGE PORTS
          oeen7uf9za44   nginx-stack_nginx   replicated   1/1        nginx:latest   *:80->80/tcp

          文章转载自巴韭特锁螺丝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论