nginx代理mysql,需要安装stream插件,stream插件可代理tcp协议、udp协议、websocket协议。

如果nginx是从官网下载的,那么默认不启用stream插件,需要我们在编译的时候指定--with-stream,参考http://nginx.org/en/docs/stream/ngx_stream_core_module.html

如果用的是docker hub的nginx镜像,那么已经启用了。

用nginx -V命令可以查看nginx的版本、安装的插件、命令目录、配置文件目录等。

在配置文件中新增与http同级的stream块,内容如下:

stream {
    upstream mysql {
       # server 127.0.0.1:3306;
        server host.docker.internal:3306;
    }
    server {
        # 监听的映射端口
        listen 8080;
        proxy_timeout 20s;
        proxy_pass mysql;
   }
}

访问8080端口,就会代理到下游mysql服务。

可以用mysql命令行客户端连接myql服务器来校验配置是否正确。

 

nginx代理redis

 

nginx代理es

 

相关文章:

  • 2021-06-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-28
  • 2022-01-30
  • 2021-10-19
  • 2022-02-01
猜你喜欢
  • 2022-12-23
  • 2021-12-31
  • 2021-09-07
  • 2022-12-23
  • 2022-12-23
  • 2022-02-20
相关资源
相似解决方案