Gradio私网和公网的使用

343 篇文章 9 订阅

Gradio私网问题

如果部署的服务器只有私有地址,那么无法直接从外部网络中的其他计算机访问该服务器和其中运行的 Gradio 应用程序。在这种情况下,你可以考虑使用端口转发技术,将服务器的私有地址映射到一定的公开地址上,从而可以在外部网络中访问 Gradio 应用程序。

常用的一种端口转发技术是 NAT 网络地址转换(Network Address Translation),它可以将服务器的内部 IP 地址映射到一个公共 IP 地址上,并将访问该公共 IP 地址和端口的流量转发到服务器的内部 IP 地址和端口。在 Linux 系统中,可以使用 iptables 工具来进行端口转发和 NAT 配置。

以下是一个使用 iptables 进行端口转发和 NAT 配置的示例,假设服务器的内部 IP 地址为 192.168.1.100,应用程序运行在 7861 端口上:

  1. 首先在服务器上打开 iptables 转发功能,运行以下命令:

    sysctl -w net.ipv4.ip_forward=1
    
  2. 然后使用 iptables 进行端口转发和 NAT 配置,运行以下命令:

    iptables -t nat -A PREROUTING -p tcp --dport 7861 -j DNAT --to-destination 192.168.1.100:7861
    iptables -t nat -A POSTROUTING -j MASQUERADE
    

    这个命令将 7861 端口的 TCP 流量转发到内部 IP 地址为 192.168.1.100 的服务器上,并使用 MASQUERADE 参数将内部服务器的流量源地址替换为公共 IP 地址,从而使内部服务器的流量看起来像是通过公共 IP 地址上双向通信的网络一样。

需要注意的是,使用端口转发技术进行 NAT 配置时,需要确保转发规则和防火墙配置正确,并且应该采取适当的安全措施来保证访问的安全性,比如只允许特定的 IP 地址或者设置 VPN 访问等。

Gradio公网问题

https://98d0d9aff8aacde33d.gradio.live 这个地址是 Gradio 官网提供的免费公共 URL,可以通过公网访问你本地部署的 Gradio 应用程序。具体实现原理是 Gradio 官网提供了一个服务,它会反向代理到你部署的本地 Gradio 应用程序,从而使通过 https://98d0d9aff8aacde33d.gradio.live 可以访问你本地部署的 Gradio 应用程序。

在实现上,你在本地部署 Gradio 应用程序后,需要运行 gradio share 命令,该命令会向 Gradio 服务器注册你的应用程序,并把应用程序的公网 URL 地址返回给你。当你在浏览器中访问该地址时,Gradio 服务器就会通过反向代理的方式将用户的请求转发到你的本地 Gradio 应用程序上。这种实现方式可以使用户在不知道具体本地部署的情况下,通过公共网址轻松地访问 Gradio 应用程序。

由于 Gradio 官网提供的免费公共 URL 是在公网服务器上提供服务的,因此可以通过不同网络环境下的设备进行访问,包括在内网环境的设备。但需要注意的是,这种公共 URL 只有 72 小时的有效期限,如果需要长期的永久部署,则需要使用 Gradio 官方提供的部署服务。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值