公网访问实例内服务
在 GPUGEEK 平台使用该功能可以帮您把实例内的服务暴露到公网进行访问,该服务可以是 Web项目
、API接口
、Stable Diffusion web UI
、ComfyUI
、vLLM
等、以及任何监听了 HTTP
、TCP
端口类型的进程。
使用该功能注意事项
严禁通过该功能提供色情、暴力、违规图片、不正当文字等一切违反国家规定、安全等行为;GPUGEEK 平台将实时对该功能图片、文字、网络流量等 行为进行检测,一经发现,平台将立即封号且保留通过法律途径追究责任,赔偿平台经营损失。
使用该功能必须进行企业认证后方可使用。
如下演示该功能的使用流程
1. 进行实名认证
登录 GPUGEEK 控制台,点击 账户中心,进行企业认证,实名认证提交后会在 0-3
个工作日通过审核。
2. 创建实例
创建实例过程请参考 创建实例
3. 创建自定义端口
到实例控制台-找到对应实例-更多-创建自定义端口(实例需要在运行状态)
4. 添加自定义端口配置
点击添加端口配置
配置端口
输入您项目在实例中监听的端口
比如,您在实例中的进程监听的端口为 8080
,那就在下面图中填写为 8080
,如果为 9000
就填写为 9000
。
每台实例支持三个对外暴露的端口,然后点击确定
5.填写完成后等待重置端口完成
6.点击自定义端口进行访问
然后点击 自定义端口8080
或者 自定义端口9000
会跳转到对应公网可以访问的 URL
,该地址为平台自动分配的公网端口以及地址。
映射关系
我这里点击 自定义端口8080
,浏览器自动跳转到了 http://xxxxxxxx.gpugeek.com:60000/
。
8080
端口为实例内所监听的端口http://xxxxxxxx.gpugeek.com:60000/
为 GPUGEEK 平台自动分配的公网地址和端口。xxxxxxxx.gpugeek.com
域名的60000
端口会与您实例内的8080
端口自动绑定为映射关系。- 您在浏览器或者公网可以通过
http://xxxxxxxx.gpugeek.com:60000
访问到您实例中8080
端口所运行的服务。
7. 在实例中启动需要对外暴露的服务
提示
如下定义了一个简短的HTTP
服务器,指定监听地址为0.0.0.0
,监听端口为9000
,您的项目如果需要对公网访问,监听地址就必须写为 0.0.0.0
,否则网络转发不可达,则无法通过公网访问。
main.py
from http.server import BaseHTTPRequestHandler, HTTPServer
class SimpleHTTPRequestHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/plain')
self.end_headers()
self.wfile.write(b"Hello, This is a custom service provided by GPUGEEK !")
host = "0.0.0.0"
port = 9000
with HTTPServer((host, port), SimpleHTTPRequestHandler) as server:
print(f"Server started at http://{host}:{port}")
server.serve_forever()
启动该项目
python main.py
然后到控制台点击 自定义端口9000
进行访问即可。