zoukankan      html  css  js  c++  java
  • openresty——yum安装 配置 使用 错误处理 docker方式安装

    yum方式安装

    wget https://openresty.org/package/centos/openresty.repo

    mv openresty.repo /etc/yum.repos.d/

    ll /etc/yum.repos.d/

    yum list | grep openresty 

    yum install -y openresty.x86_64

    service openresty status

    service openresty start

    /usr/local/openresty/nginx/sbin/nginx -v

    vim /usr/local/openresty/nginx/conf/nginx.conf

    /usr/local/openresty/nginx/sbin/nginx -s reload

    支持lua 配置文件添加

     #lua 缓存(每次修改lua后需要重启)默认是开启 on , 开发阶段建议关闭,生产环境必须开启 
        lua_code_cache on;
        lua_package_path  "/root/data/acgn/game_res/?.lua;/root/data/acgn/game_res/script/?.lua;/root/data/acgn/game_res/serverbattle/src/?.lua;;"; #lua 模块   
        server {
            listen       8009;
            server_name  localhost;
    
            client_max_body_size 50m;
            client_body_buffer_size 10m;
    
            location /battle_callback {
                default_type text/plain;
                content_by_lua_file /root/data/acgn/game_res/blaze_battle.lua;
            }
    
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }

    报错

    tail -f /usr/local/openresty/nginx/logs/error.log

    tail -f /usr/local/openresty/nginx/logs/error.log
    2021/05/26 17:19:14 [error] 83655#83655: *6 failed to load external Lua file "/root/data/acgn/game_res/blaze_battle.lua": cannot open /root/data/acgn/game_res/blaze_battle.lua: Permission denied, client: 192.168.1.51, server: localhost, request: "GET /battle_callback HTTP/1.1", host: "192.168.1.20:8009"
    2021/05/26 17:19:26 [error] 83655#83655: *7 failed to load external Lua file "/root/data/acgn/game_res/blaze_battle.lua": cannot open /root/data/acgn/game_res/blaze_battle.lua: Permission denied, client: 192.168.1.51, server: localhost, request: "POST /battle_callback HTTP/1.1", host: "192.168.1.20:8009"

    原因: nginx进程所属用户nobody

    [root@bogon acgn]# ps -ef | grep nginx
    root      15795      1  0 May25 ?        00:00:00 nginx: master process /usr/local/openresty/nginx/sbin/nginx
    nobody    83709  15795  0 17:19 ?        00:00:00 nginx: worker process
    root      83736  36201  0 17:20 pts/0    00:00:00 grep --color=auto nginx

    vim /usr/local/openresty/nginx/conf/nginx.conf

    把 user nobody 改为 user root

    /usr/local/openresty/nginx/sbin/nginx -s reload

    解决。

     

     

    下面是docker方式安装

    1、拉取镜像

    docker images
    docker pull openresty/openresty:1.19.3.1-centos7

    2、先启动一个作出配置文件

    docker run -d --name openresty 
                  -p 8009:8009 
                  openresty/openresty:1.19.3.1-centos7
    做目录
    tree /root/data/soft/openresty
        /root/data/soft/openresty
        ├── conf
        ├── logs
        └── lua
    docker cp openresty:/usr/local/openresty/nginx/conf/nginx.conf /root/data/soft/openresty/conf/

    3、删除旧容器

    docker stop openresty
    docker rm openresty
    docker ps -a

    4、启动 指定nginx.conf  lua路径  logs路径

    lua_code_cache on;
    lua_package_path  "/lua/acgn/game_res/?.lua;/lua/acgn/game_res/script/?.lua;lua/acgn/game_res/serverbattle/src/?.lua;;"; #lua 模块   
    server {
        listen       8009;
        server_name  localhost;
    
        client_max_body_size 50m;
        client_body_buffer_size 10m;
    
        location /battle_callback {
            default_type text/plain;
            content_by_lua_file /lua/acgn/game_res/blaze_battle.lua;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    6、重新加载配置或者重启openresty

    docker exec -it openresty nginx -s reload
    修改容器所占最大内存 docker update
    -m 1G --memory-swap 1G openresty

    7、下面是HAProxy负载均衡配置

    在三台机器  192.168.1.20   192.168.1.21  192.168.1.22 各部署一个openresty,用HAProxy作负载均衡

    vim /etc/haproxy/haproxy.cfg 

    #openresty for battle check
    listen acgn_battle
       bind 0.0.0.0:8008
       mode http
       balance roundrobin
       server battle1 192.168.1.20:8009
       server battle2 192.168.1.21:8009
       server battle3 192.168.1.22:8009

    service haproxy restart

    service haproxy status

  • 相关阅读:
    POJ-1088 滑雪 (包含部分自用测试数据)
    PHP-从零开始使用Solr搜索引擎服务(下)
    PHP-从零开始使用Solr搜索引擎服务(上)
    15位身份证号转化为18位身份证号
    php的数组转为对象
    H5页面遮罩弹框下层还能滚动的问题
    纯css实现长宽等比例的div
    VUE开发一个图片轮播的组件
    jQuery map和each用法
    表格式布局让每个列高度等于该行最大高度
  • 原文地址:https://www.cnblogs.com/xingchong/p/14810237.html
Copyright © 2011-2022 走看看