docker + ngrok + nginx内网穿透访问本地,方便本地调试

ngrok客户端生成

docker run --rm -it \
	-e DOMAIN="jiadays.com" \
	-v /root/ngrok:/myfiles hteen/ngrok /bin/sh /build.sh

-对应生成的目录

  • bin/ngrokd 服务端
  • bin/ngrok linux客户端
  • bin/darwin_amd64/ngrok osx客户端
  • bin/windows_amd64/ngrok.exe windows客户端

服务端生成

docker run -idt --name ngrok-server \
	-v /root/ngrok:/myfiles \
	-p 81:80 -p 444:443 -p 4444:4443 \
	-e DOMAIN='jiadays.com' \
	hteen/ngrok /bin/sh /server.sh

Nginx 配置

server {
     listen       80;
     server_name  test.jiadays.com;

     location / {
             proxy_redirect off;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_pass http://服务器ip:81;
     }

 }

 server {
     listen       443;
     server_name  test.jiadays.com;

     location / {
             proxy_redirect off;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_pass http://服务器ip:444;
     }

 }
  1. 根据自己系统下载对应的客户端(ngrok)

  2. 同目录生成 ngrok.cfg 文件

    server_addr: "jiadays.com:4444"
    trust_host_root_certs: false
    tunnels:
      test:
         proto:
          http: 5000
    
  3. ./ngrok -config=ngrok.cfg -log=ngrok.log start test

  4. 访问test.jiadays.com (记得二级域名解析)

猜你喜欢

转载自blog.csdn.net/abc564643122/article/details/104018740
今日推荐