笔者使用的阿里云平台PAI主机(首次使用免费三个月额度),由于其默认不设置公网IP,所以在该主机上启动HTTP服务后无法访问测试。
这里使用ssh来作隧道穿透,首先需要配置ssh。
在云主机上执行
passwd root
在云主机上修改文件:
/etc/ssh/sshd_config
将配置#PermitRootLogin prohibit-password修改为PermitRootLogin yes,去除注释符号#, 保存并退出。
在云主机上执行
- service ssh stop
- service ssh start
如果找不到服务,可以直接重启云主机
(PS: 也可以配置直接访问, 但直接访问需要付费, 这里笔者这样的价格敏感型用户就使用proxy-client了)
找到自己操作系统的proxy-client
如果是Mac或者Linux, 还需要增加权限
chmod 755 proxyclient
region-id查询地址

网页左上角,工作台右侧是云主机所在region,然后在地址和可用区列表 查找对应的region_id,
笔者这里是上海,对应的region_id是cn-shanghai。
在阿里云网站上操作

3. 在认证管理页签下的AccessKey区域,单击创建AccessKey。

4. 接下来,根据界面提示完成安全验证
5. 成功获得AccessKey和AccessSecret,一定要保存好!!!!!

在本地主机执行如下代码:
- # Mac,Linux。
- ./proxyclient config
- # Windows。
- proxyclient.exe config
依据提示将上两步获取到的相关信息填入。
其中STSToken为子账号访问时配置,你可以这样获取。
目录
获取DSW实例ID, 你可以访问你的PAI工作如下操作,复制你需要ssh的实例id

在本机执行如下命令:
proxy-client add -i=<实例ID>
在配置了proxy-client的机器上执行
ssh <实例ID>
其中实例ID可以通过PAI控制台获取,也就是在配置proxy-client时添加的实例ID
要求输入密码,即正常访问,如下

则说明配置成功。
ssh -L localhost:8502:localhost:8501 root@<实例ID>
其中,localhost:8502 为本地绑定的主机接口以及端口,localhost:8501 为DSW实例上启动的接口和端口。
输入密码登录成功后,就可以通过浏览器访问 localhost:8502 来访问DSW实例上部署的HTTP服务了。
PS:还可以通过scp命令相互拷贝文件,示例如下:
- scp -r chatglm3-6b-32k root@<实例ID>:/mnt/workspace/
- scp -r root@<实例ID>:/mnt/workspace/ChatGLM3/finetune_demo/output ./law_chatglm3