作者:不再敲字是手抽筋 cpolar用户投稿
开场痛诉“老开发者”的绝望日常
“上周五,我对着三个屏幕抓狂——左侧是卡到死的API文档,中间在等代码编译,右侧弹出5个同事问‘怎么连不上测试环境’…突然想起三年前自己刚入行时,也是这样被命令行和跨地域协作折磨得头发掉了一把。直到遇到OpenHands+cpolar这对黄金拍档,才发现原来开发效率可以像开了挂一样狂飙!”
第团队管理者的“偷懒”黑科技——OpenHands真香现场
场景1:“代码写三天不如AI喝口凉水”
新手小王要给项目加个支付接口?以前得陪他在Stack Overflow翻半天,现在一句话指令甩给OpenHands:“生成支持微信/支付宝的Python API对接代码,并集成错误处理。” 3分钟后,连异常日志都分类好了!我直接截图发群里:“看,AI才是真正的加班克星!”
场景2:“命令行?不存在的——动口不动手时代来了”
每次远程指导实习生配置环境,光是pip install
+npm start
就问出个花来。现在我直接让OpenHands接管:
- 自动检测依赖版本冲突
- 一键生成Dockerfile(附带中文注释)
- 还能用自然语言执行“重启Nginx服务”这种操作……
周会我宣布:“从今天起,命令行是AI的家务活!”
来自cpolar官网的福利
Linux部署OpenHands
本篇文章演示环境:Ubuntu22.04
运行 OpenHands 最简单的方法是使用Docker进行部署,如果没有安装Docker,可以查看这篇教程进行安装:Docker安装——Linux、Windows、MacOS - cpolar 极点云官网
输入以下命令来运行以下命令拉取OpenHands镜像:
sudo docker pull docker.all-hands.dev/all-hands-ai/runtime:0.14-nikolaik
使用以下命令启动OpenHands容器:
sudo docker run -it --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.14-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.14
打开浏览器输入 localhost:3000 启动并可以访问。
OpenHands功能介绍
首次运行时,会弹出设置窗口。
用户需要选择LLM提供商、LLM模型并输入API密钥。
可通过点击UI中的齿轮图标随时调整设置。如需使用自定义模型,可在高级选项中手动输入模型名称和Base URL。
设置好后,点击Save保存
接下来验证下OpenHands,输入下提示词请求,例如:请编写一个 bash 脚本 hello.sh,打印 “hello world!”
回到OpenHands,可以看到左侧显示提示词,右侧给出了对应回答
接下来我想让他使用HTML创建一个简单的计算器,点击生成,可以看到右侧出现了相应文件的代码
在输入框中让它运行这个项目,可以看到在对话框中输出了链接
验证一下这个简单的计算器生成是否正确,这里我使用VsCode打开并运行代码。
一个简易的计算器就生成好了,如果不满意就可以回到OpenHands,继续输入要求生成新的代码。
远程协作?不存在的!——cpolar内网穿透的神仙操作
以前最怕跨时区合作,凌晨2点还要开Zoom教德国同事连服务器?现在我的口头禅是:“别说话,让科技解决。”
- 3步搞定内网穿透:用cpolar配置映射→OpenHands自动部署测试环境→所有成员扫码秒进开发沙箱。
- 神操作案例:上周紧急修复生产BUG时,我在星巴克连着咖啡店WiFi,远程指挥团队通过cpolar+OpenHands同步调试——代码生成、日志抓取、容器重启全自动化,客户愣是没发现我们“全员居家办公”!
接下来教大家如何安装Cpolar并且将 OpenHands 实现公网使用。
公网使用OpenHands
内网穿透工具安装
下面是安装cpolar步骤:
Cpolar官网地址: https://www.cpolar.com
使用一键脚本安装命令
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:
创建远程连接公网地址
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:
-
隧道名称:可自定义,本例使用了: openhands 注意不要与已有的隧道名称重复
-
协议:http
-
本地地址:3000
-
域名类型:随机域名
-
地区:选择China Top
-
创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。
如下图所示,成功实现使用公网地址异地远程访问本地部署的OpenHands,跟上面一样,配置好模型即可使用。
使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到OpenHands界面,这样一个利用公网地址可以进行远程访问的隧道就创建好了,隧道使用了cpolar的公网域名,无需自己购买云服务器,可节省大量资金。使用cpolar创建隧道即可发布到公网进行远程访问,新域名登录,可能需要重新登陆!
固定OpenHands公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。
注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】
登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择china vip top,然后设置一个二级子域名名称,填写备注信息,点击保留。
保留成功后复制保留的二级子域名地址:
登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
。
修改隧道信息,将保留成功的二级子域名配置到隧道中
-
域名类型:选择二级子域名
-
Sub Domain:填写保留成功的二级子域名
-
地区: China VIP
点击更新
更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。
最后,我们使用固定的公网地址访问 OpenHands 界面可以看到访问成功,一个永久不会变化的远程访问方式即设置好了。
“人机CP”的隐藏用法——让AI变成你的24小时开发管家
技巧1:把OpenHands当“智能百科全书”
需要查某个第三方库的文档?直接说:“打开requests官网,提取POST请求示例并转成async版本。” 它会自动截图网页重点段落+生成代码——比你亲自看还快!
技巧2:用cpolar构建“永不宕机”的开发沙箱
将OpenHands容器通过cpolar绑定固定域名,哪怕公司服务器被黑/断网,团队都能无缝切换到你的备用云环境。
给后来者的肺腑之言——为什么这对组合能让你少秃十根头发
- OpenHands不是取代程序员,而是把你从重复劳动中解放,去干真正需要“人脑”的设计/架构工作。
- cpolar的稳定性是真香:又快又稳、免费版带宽小团队使用都有剩余,现在还能免费升级套餐,简直就是良心国货!
效率革命的终极大招——AI+云原生=开发者永动机
现在我终于懂了:真正的“不加班”,不是靠意志力硬扛,而是用技术把低效环节全替换成机器人。OpenHands负责写代码/搞运维,cpolar解决远程协作魔咒,我只需要专注战略决策——头发都保住了呢!
P.S. cpolar免费版足够小团队用炸天,点击这里试试看?