找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 927|回复: 6

github actions除了在线编译openwrt之外的一个新玩法(高手勿笑)

[复制链接]
发表于 2023-6-10 23:39 | 显示全部楼层 |阅读模式
本帖最后由 wubozh 于 2023-6-10 23:45 编辑

       本地编译OpenWrt,受制于网络,经常会出现下载速度巨慢和编译失败,没办法,听大家的劝,改学用github actions云编译。但云编译是通过工作流实现的,不好交互。后来想:能不能用SSH连接到github?看到网上有用SSH连接到github actions的项目,但因为英文基础太差,看不懂那些代码和提示,干脆自己用已经学会的网络基础打造一个工作流来实现:
1.单独建一个仓库,创建一个工作流,选择ubuntu环境;
2.工作流的启动方式为手动运行;
3.启动后,创建root用户目录,给root用户加上密码;修改/etc/ssh/sshd_config文件,启用root用户的远程登录(试过自建用户,但SSH进去后好像无权限安装软件,有知道原因的高手请教我一下);
4.加载kmod-tun模块,下载安装n2n软件,再运行edge,连接家里路由器上的supernode,和家里组成虚拟局域网(我家里有公网IP,用动态域名来连接);
5.下载并运行srelay软件,监听某端口,提供socks代*理服务;( 此步骤完成后,就可以在浏览器选择vps的内网地址+这个端口来使用代*理了。这个srelay代*理是明文代理,当作应急使用);
6.运行一个sleep命令,让vps无限等待(当然,最长也只6小时,然后github actions可能就会被强行关闭,我没试过)。
      整个过程完成后,可以做到:工作流运行后,随时可以用ssh远程登录到这个虚拟主机进行交互操作;在这六个小时里,这个虚拟主机可以向内网提供socks代理服务(当然也可以不用了的话随时关闭)。但有如下问题:
1.每次启动都要重新下载安装软件才能启动服务,耗时3-4分钟。看过github有缓存功能,还没试过,估计应该可以缩短1-2分钟等待时间吧。
2.启动srelay代*理服务的命令运行时,不管是用后面加上&的办法,还是nohup srelay &,都会执行后马上转入到工作流的下一个步骤,转而整个工作流结束。我不知道怎么让srelay在后台持续运行不让工作流接着往下跑。最后用了在工作流后面加了个sleep 20000的笨办法维持工作流不关闭。有更合理的办法不?
3.受限于本地连接到github的速度限制,这个虚拟内网的速度不是很好,所以想用这个虚拟内网来做代*理享受github飞快的国外下载速度好像是不可能的。不知道有没有办法提高这个虚拟内网的传输速度?用某个国内的vps做中转?

只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2023-6-11 07:02 来自手机 | 显示全部楼层
这玩法几年前我就弄过了,可以用sdk编译的,而且网上有现成的带ssh的仓库只是后來git封了,用了ssh后过一会就断开连接,难道现在又能用了?

点评

这个方法连接上的SSH,上午一直连接了快6个小时才断开的。看了一下log,应该是sleep 20000的定时时间到了,自动结束了  详情 回复 发表于 2023-6-12 15:15
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2023-6-11 07:06 来自手机 | 显示全部楼层
我觉得google could shell可以研究一下,有没有人能弄一个带ssh和远程ubuntu的docker镜像,大家来玩玩

点评

google could 和github actions有什么区别吗?  详情 回复 发表于 2023-6-11 08:32
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-11 08:32 | 显示全部楼层
725216 发表于 2023-6-11 07:06
我觉得google could shell可以研究一下,有没有人能弄一个带ssh和远程ubuntu的docker镜像,大家来玩玩 ...

google could 和github actions有什么区别吗?
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-11 08:35 | 显示全部楼层
我在调试的过程中SSH倒是一直没有断开。下次持续连接试试看最长到底多少时间?它这个ssh是默认启动的,只要启用root账户就行了。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-12 15:15 | 显示全部楼层
725216 发表于 2023-6-11 07:02
这玩法几年前我就弄过了,可以用sdk编译的,而且网上有现成的带ssh的仓库只是后來git封了,用了ssh后过一会 ...

这个方法连接上的SSH,上午一直连接了快6个小时才断开的。看了一下log,应该是sleep 20000的定时时间到了,自动结束了
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-6-17 09:34 | 显示全部楼层
本帖最后由 wubozh 于 2023-6-17 09:38 编辑

昨晚测试了一下,用n2n的虚拟局域网连接上github actions运行的虚拟主机,延迟在250-350ms之间,上传在1MB左右(用winscp向虚拟主机传文件过去),下载在0.5mB左右(从虚拟主机拖文件回家)。虚拟主机自己的测速(互联网)上传下载在50MB左右。这个速度不知道有没有实用价值?连接比较稳定,在虚拟主机启动的六个小时内随时可以连上去,不用了随即关掉不影响虚拟主机的运行。
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-9-28 12:02

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表