php-nginx集群负载均衡

首先写一个脚本用来创建目录

#创建网站根目录
mkdir /wwwroot 
#nginx1 配置只用做转发
mkdir -p /nginx/nginx1

#nginx1中要配置上游集群,由于需要php,需要设置ip_hash策略 
#nginx2 用来做集群中的nginx配置 多个docker 容器挂载相同的配置文件,方便统一管理
mkdir -p /nginx/nginx2
mkdir /php
...
...
#创建目录后注意copy配置文件

然后写一个docker-compose.yml文件用来部署容器

version: '3'
services:
      nginx1:
              container_name: nginx1
              image: nginx
              volumes:
                       - /wwwroot:/www
                       - /nginx/nginx1/conf/conf.d:/etc/nginx/conf.d
                       - /nginx/nginx1/conf/nginx.conf:/etc/nginx/nginx.conf
                       - /nginx/nginx1/logs:/var/log/nginx
              links:
                    - 'nginx2:nginx2'
                    - 'nginx3:nginx3'
                    
              ports:
                    - '443:443'
                    - '80:80'
              restart: 'always'
      nginx2:
              container_name: nginx2
              image: nginx
              volumes:
                        - /wwwroot:/www
                        - /nginx/nginx2/conf/conf.d:/etc/nginx/conf.d
                        - /nginx/nginx2/conf/nginx.conf:/etc/nginx/nginx.conf
                        - /nginx/nginx2/logs:/var/log/nginx
                        - /nginx/nginx2/cert:/var/cert
              restart: 'always'
              links:
                    - 'php2:php-fpm'

      nginx3:
              container_name: nginx3
              image: nginx
              volumes:
                       - /wwwroot:/www
                       - /nginx/nginx2/conf/conf.d:/etc/nginx/conf.d
                       - /nginx/nginx2/conf/nginx.conf:/etc/nginx/nginx.conf
                       - /nginx/nginx2/logs:/var/log/nginx
                       - /nginx/nginx2/cert:/var/cert 
              restart: 'always'
              links: 
                    - 'php3:php-fpm'

      php2:
              container_name: php2
              image: php:fpm
              volumes:
                      - /wwwroot:/www
                      - /php/php2/php.ini:/usr/local/etc/php/php.ini
                      - /php/php2/php-fpm.conf:/usr/local/etc/php-fpm.conf
                      - /php/php2/php-fpm.d:/usr/local/etc/php-fpm.d
      php3:
              container_name: php3
              image: php:fpm
              volumes:
                      - /wwwroot:/www
                      - /php/php2/php.ini:/usr/local/etc/php/php.ini
                      - /php/php2/php-fpm.conf:/usr/local/etc/php-fpm.conf
                      - /php/php2/php-fpm.d:/usr/local/etc/php-fpm.d

然后docker-composer up -d 就ok了

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值