记一次frp内网穿透,实现公网ip访问本地项目

为什么需要内网穿透功能?

我们在公司本地搭建了自己公司的内部系统,但是由于公司组网的方式特殊,无法实现所有人都能通过内网ip访问到项目,
又不能上线到云,于是就需要这个内网穿透功能,把这个本地主机给予公网访问的权限。

frp是什么?

简单地说,frp就是一个反向代理软件,它体积轻量但功能很强大,可以使处于内网或防火墙后的设备对外界提供服务,它支持HTTP、TCP、UDP等众多协议。

准备工作

  • frp软件(这里用的是开源产品:github 选择frp_0.33.0_linux_arm64.tar.gz 和 frp_0.33.0_windows_amd64.zip)
  • 一台服务器(演示型号为:centOS7)
  • 运行有web项目的设备(windows或者linux,本次以自己的笔记本来演示,所以是windows)

服务器安装

上传到压缩包到服务器后,解压:

tar -zxfv frp_0.33.0_linux_arm64.tar.gz

进入到解压目录, 然后配置 frps.ini 文件:

cd /home/frp_0.33.0_linux_arm64.tar.gz
vim frps.ini

修改为如下配置

[common]
bind_port = 7000      
dashboard_port = 7500
token = 12345678
dashboard_user = admin
dashboard_pwd = admin
vhost_http_port = 10080
vhost_https_port = 10443
  • “bind_port”表示用于客户端和服务端连接的端口,这个端口号我们之后在配置客户端的时候要用到。
  • “dashboard_port”是服务端仪表板的端口,若使用7500端口,在配置完成服务启动后可以通过浏览器访问 x.x.x.x:7500 (其中x.x.x.x为VPS的IP)查看frp服务运行信息。
  • “token”是用于客户端和服务端连接的口令,请自行设置并记录,稍后会用到。
  • “dashboard_user”和“dashboard_pwd”表示打开仪表板页面登录的用户名和密码,自行设置即可。
  • “vhost_http_port”和“vhost_https_port”用于反向代理HTTP主机时使用,本文不涉及HTTP协议,因而照抄或者删除这两条均可。

保存退出后,运行frps服务器端:

./frps -c frps.ini

运行成功如图:

使用ip地址加端口,输入设置好的用户名密码,即可看到仪表盘面板:http://x.x.x.x:7500/

客户端配置(windows演示)

windows解压,就不说了。
解压完成后,配置frpc.ini:

[common]
server_addr = 服务器ip
token = 12345678
server_port = 8888

[web]
type = http
local_port = 8080
custom_domains = 服务器ip
  • “server_addr”为服务端IP地址,填入即可。
  • “server_port”为服务器端口,填入你设置的端口号即可,如果未改变就是7000
  • “token”是你在服务器上设置的连接口令,原样填入即可。

windows的 frpc 运行!

进入powershell:
windows快捷键: windows+x 按 a 进入powershell
执行:

./frpc -c frpc.ini

成功如图:

访问

使用 ip加端口(http://服务器ip:10080)访问
如图:


访问到我本机正在运行的springboot端口为8080的项目,则成功。

ps:务必确保一下三点

  • 可以ping通公网ip
  • 服务端已经开启 (jobs命令可以查看正在运行的任务)
  • 服务端端口已经开放(防火墙)

firewall-cmd --state 查看防火墙状态
systemctl stop firewalld 关闭防火墙(centOS 7)

END

### 使用 AutoGPTQ 库量化 Transformer 模型 为了使用 `AutoGPTQ` 对 Transformer 模型进行量化,可以遵循如下方法: 安装所需的依赖包是必要的操作。通过 pip 安装 `auto-gptq` 可以获取最新版本的库。 ```bash pip install auto-gptq ``` 加载预训练模型并应用 GPTQ (General-Purpose Tensor Quantization) 技术来减少模型大小和加速推理过程是一个常见的流程。下面展示了如何利用 `AutoGPTQForCausalLM` 类来进行这一工作[^1]。 ```python from transformers import AutoModelForCausalLM, AutoTokenizer from auto_gptq import AutoGPTQForCausalLM model_name_or_path = "facebook/opt-350m" quantized_model_dir = "./quantized_model" tokenizer = AutoTokenizer.from_pretrained(model_name_or_path) model = AutoModelForCausalLM.from_pretrained(model_name_or_path) # 加载已经量化的模型或者创建一个新的量化器对象用于量化未压缩过的模型 gptq_model = AutoGPTQForCausalLM.from_pretrained(quantized_model_dir, model=model, tokenizer=tokenizer) ``` 对于那些希望进一步优化其部署环境中的模型性能的人来说,`AutoGPTQ` 提供了多种配置选项来自定义量化参数,比如位宽(bit-width),这有助于平衡精度损失与运行效率之间的关系。 #### 注意事项 当处理特定硬件平台上的部署时,建议查阅官方文档以获得最佳实践指导和支持信息。此外,在实际应用场景之前应该充分测试经过量化的模型以确保满足预期的质量标准。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人生莫如饥荒

如果对您有帮助,也可以给点赏钱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值