58 0

[作业] 本地 AI 编程助手不够用?加个cpolar就能随时随地调用 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

40%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
0 小时
注册时间
2018-11-30
最后登录
2018-11-30

楼主
雨后有车驶来 发表于 2025-11-19 18:36:56 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

前言

OpenHands 是一款能够帮助开发者生成代码、修复 Bug 的强大工具,支持包括 Python 和 Java 在内的多种编程语言。对于经常加班的程序员来说,它最吸引人的地方在于能够迅速找到代码中的漏洞,节省了手动逐行检查的时间,特别是在处理复杂的逻辑时,能够提供很多有价值的建议。

过去,该工具只能在本地使用,这意味着下班后想要继续处理公司项目中的代码是不可能的。然而,通过配置 cpolar,现在可以在家中远程访问 OpenHands,继续白天未完成的工作,甚至与远在他地的同事共享调试界面,实时讨论代码问题,不再受制于办公室的局域网环境。

视频教程

OpenHands(曾用名 OpenDevin) 是一个基于大型语言模型 (LLM) 的 AI 编程辅助工具。设想一下,拥有一个全天候在线的专业软件工程师随时待命,是不是感觉很棒?这正是 OpenHands 所提供的服务!它能够:

  • 创建新代码:让你从头开始编写代码变得轻而易举。
  • 提升现有代码的功能:使你的代码更加高效且简洁。
  • 智能调试和纠错:自动识别并修正错误,确保程序稳定运行。
  • 支持多种编程语言:无论是 Python、Java 还是 C++,OpenHands 都能完美匹配。

部署 OpenHands 步骤

首先,在终端中输入以下命令下载项目:

docker pull docker.all-hands.dev/all-hands-ai/runtime:0.39-nikolaik

随后,使用以下命令启动项目:

docker run -it --rm --pull=always \
-e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.39-nikolaik \
-e LOG_ALL_EVENTS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/.openhands-state:/.openhands-state \
-p 3000:3000 \
--add-host host.docker.internal:host-gateway \
--name openhands-app \
docker.all-hands.dev/all-hands-ai/openhands:0.39

等待片刻后,在浏览器中输入 localhost:3000 即可访问 OpenHands 的用户界面,整个部署过程就是这么简单。

简单使用 OpenHands

首次启动时,系统会提示你选择大模型提供商、模型,并输入 API 密钥。这里推荐的提供商虽然在国外线上付费,但对于国内用户不太友好。

因此,建议选择本地部署的大模型,其优势在于免费、保护隐私、无 token 数量限制。此外,用户也可以根据个人需求选择其他模型。设置完成后,记得点击 Save 保存。

返回主页,开启一个新的对话。系统会显示一个类似 ChatGPT 的对话框,提供多种功能,如增加测试覆盖率、自动合并 PR、修复 README 文件及清理依赖等。

左侧为对话窗口,其中包含各种功能;上方的 Changes 栏目可以查看问题的历史变更记录;VSCode 区域用于存储你的项目目录,AI 生成的文件将保存在此处;终端可用于运行代码或测试;Browser 则可以预览问题转化为网页后的输出效果。

下面,我们将尝试一个简单的请求:编写一个名为 hello.sh 的 Bash 脚本,用于打印 "hello world!"。

初次尝试可能会遇到错误,但这属于正常现象,系统会逐步修正这些错误。

在 VSCode 中,你可以看到已生成的文件。

当脚本生成完毕后,系统会提示你在命令行中输入 chmod +x hello.sh 以赋予脚本执行权限,之后通过 ./hello.sh 来验证输出结果。

在顶部的终端中进行测试。此时,脚本已有执行权限,我们可以看到成功输出了 "hello world"。

完成了第一个脚本后,我们进一步要求系统修改代码,使其接受一个名字作为第一个参数,默认值为 "world"。

尽管再次遇到了错误,但不必担心,稍等片刻即可。

当系统提示任务完成时,你可以使用一个可选的名字参数来运行脚本,例如 Alice,它将输出 "hello Alice"。若未提供参数,则默认输出 "hello world"。

打开 VSCode 查看新增的变量参数,然后进行测试。在终端中输入 ./hello.sh gezi 并将参数改为 gezi,可以看到成功输出了 "hello gezi",证明了这一过程的高效性。

四、安装cpolar内网穿透

首先,访问cpolar官方网站:
https://www.cpolar.com
在首页点击注册按钮,

免费使用

创建一个新账户,并从网站下载最新版本的Cpolar软件。

登录后,选择下载适用于Windows的Cpolar客户端,并按照默认设置完成安装过程。

安装完成后,通过浏览器访问 http://localhost:9200 进行登录操作。使用之前注册的cpolar账户登录,成功后会进入Cpolar的Web配置界面,接下来可以在该界面上进行相应的设置。

五、配置公网地址

登录到cpolar的Web用户界面后,导航到左侧菜单的“隧道管理”部分,点击“创建隧道”。
设置如下:
- 隧道名称:自定义,例如本例中的“openhands”,确保名称唯一性
- 协议:选择 http
- 本地地址:输入 3000
- 域名类型:选择“随机域名”
- 地区:选择“China Top”
点击创建按钮。

创建成功后,在“在线隧道列表”中查看新创建的公网地址。这些地址可用于在其他设备上远程访问本地服务。

至此,已经可以通过cpolar生成的公网地址实现远程访问本地部署的服务。

小结

上述步骤展示了如何使用cpolar生成的随机HTTP公网地址隧道。这种隧道建立迅速,适合临时使用。不过,由于地址会在24小时内自动更改,对于需要长期稳定访问的应用来说,可能不够理想。

六、配置固定二级子域名公网地址

为了提供更加稳定的远程访问体验,建议使用固定的二级子域名。这需要将cpolar的服务计划升级至基础套餐或更高。
- 登录cpolar Web UI管理界面
- 导航到“预留”选项卡,选择“保留二级子域名”
- 选择“China Top”作为地区
- 输入自定义的二级子域名名称,如本例中的“openhands”
- 填写备注信息,点击“保留”按钮

成功保留后,复制二级子域名地址。

接着,在“隧道管理”下的“隧道列表”中找到目标隧道“openhands”,点击编辑按钮。

编辑

修改隧道配置,将保留的二级子域名填入相应字段。

- 域名类型:选择“二级子域名”
- Sub Domain:填入之前保留的二级子域名
- 地区:选择“China Top”
最后,保存更改。
更新


更新后,返回“在线隧道列表”,确认公网地址已更新为固定的二级子域名。

使用新配置的固定公网地址在任何设备上访问,验证是否能够成功连接到本地部署的OpenHands页面。

总结

通过以上步骤,您不仅获得了强大的本地编程辅助工具OpenHands,还实现了通过cpolar进行远程访问的能力。无论身处何地,都可以轻松进行编程工作。这样的灵活性和便利性无疑为编程带来了新的可能性。希望OpenHands能成为您不可或缺的编程伴侣。
本文详细介绍了在Windows系统上快速部署OpenHands,并利用cpolar配置固定二级子域名公网地址的方法,以实现随时随地的远程访问。如果您有任何疑问或遇到问题,欢迎留言交流。
总结而言,借助OpenHands的AI辅助功能以及cpolar提供的远程访问支持,编程变得更加灵活高效,满足了不同场景下的开发需求。
本篇文章的知识点来源于:
cpolar官网

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:LAR 不够用 Hello World localhost container

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-30 05:54