用了几年的vps,一直在上面跑docker,之前一直用的是jwilder/nginx-proxy,最近发现了使用webui来管理nginx的方式,所以准备试一试,将自己的服务器和家里的nas使用frp连接起来,用起来应该会比较顺心。
当然,没有vps(固定ip)和dns(域名)的朋友还是不要折腾了。
使用的技术:
- docker
- nginx proxy manager(后面简略为npm)
- frp
安装docker(略过...)
安装npm
docker run -d --name=npm \
--restart = always
-p 80:80 \
-p 443:443 \
-p 81:81 \
-e "DB_SQLITE_FILE = /data/database.sqlite" \
-e "DISABLE_IPV6: true" \
-v /yourpath/data:/data \
-v /yourpath/letsencrypt:/etc/letsencrypt
jc21/nginx-proxy-manager:latest
安装frps (提前先建立好frps.ini配置文件,然后再运行docker)
当frps和npm都安装好之后,再将它们两个的ip都设置在同一网段,这样后面设置会方便很多
docker run -d --name=frps --restart=always \
-v /yourpath/frps/frps.ini:/frp/frps.ini \
-p 7000:7000 \
-p 7500:7500 \
-p 7080:80 \
-p 7443:443 \
-p 6000-6100:6000-6100 \
stilleshan/frps
配置文件
[common]
bind_addr = 0.0.0.0
bind_port = 7000
kcp_bind_port = 7000
bind_udp_port = 7001
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
token = yourtoken
vhost_http_port = 80
vhost_https_port = 443
allow_ports = 6000-6100
log_file = ./frps.log
log_level = info
log_max_days = 7
tcp_mux = true
protocal = kcp
login_fail_exit = false
subdomain_host = yourdomain
use_compression = true
use_encpryption = true
现在,通过ip:81就可以进入到你的npm了,接下来就可以配置自己的dns指向到vps的ip地址,然后添加cname来进行重定向。
说明:tech_blog frps等都是container的名字,端口号就是container的端口号而非暴露的端口号,至于怎么添加hosts,由于篇幅原因就不赘述了,过程比较简单,可以自己尝试添加。
我用npm+frp穿透 网站建在内网nas上面 但是wordpress的后面打不开 前台没问题 这是毛病 请教下
@we 抱歉我没有配置邮箱提醒,才看到你的留言。 如果说前台能打开,后台打不开,那考虑看看是否开启了websocket或者一些其他wordpress所需要协议
我内网建站用的宝塔 登录wordpress 后台就一直是重定向过多 要不就是网页排版全部错位
@we 重定向过多说明你的nginx没有设置正确,wordpress里的地址也可能没有设置好