熊猫不是猫 取得成就时坚持不懈,要比遭到失败时顽强不屈更重要。——拉罗什夫科
博主

2小时前在线

熊猫不是猫
凡是想获得优异成果的人,都应当异常谨慎地珍惜和支配自我的时间。——克鲁普斯卡娅
歌曲封面 未知作品

萌ICP备20229950号 蜀ICP备2021028903号

网站已运行 5 年 360 天 16 小时 10 分

Powered by Typecho & Sunny

11 online · 37 ms

Title

国内访问GitHub的最优解?海康智存部署GitMirror搜索加速

panda

·

NAS教程

·

Article

NAS、键盘、路由器······年轻就要多折腾。爱折腾的熊猫,今天又给大家分享最近折腾的内容了。关注是对我最大的支持,阿里嘎多~

怕错过熊猫的精彩分享?那就赶快关注下熊猫吧!

引言

作为一个研究开源项目的博主,找轮子、追趋势、调研技术选型……GitHub 几乎是每天必开的网站。但在国内访问 GitHub,体验懂的都懂——搜索慢半拍、页面加载转圈、想看个 Trending 还得挂梯子,偶尔运气不好直接 404。对于刚入门的朋友来说,英文界面加上复杂的搜索语法,更是直接提高了"找好项目"的门槛。

项目介绍

为了解决这个问题,熊猫花了点时间用AI做了个Github的镜像搜索站GitMirror,项目完全开源,且功能性上也比原生github强非常多,加上加持了一些基于AI的服务,用起来是相当顺手。

开源地址

项目介绍

项目熊猫已经开源了,开源地址为:https://github.com/Panda-995/github-search-mirror,感兴趣的记得给熊猫点个Star,这是对熊猫最大的支持,同时如果觉得不错,也可以关注下熊猫的媒体帐号哦!

首页

首页其实很简单,一个大搜索框输入你想要搜索的内容就行,在顶部还有个常驻的搜索框,同时顶部右侧能看到搜索、趋势以及对比还有登录入口,这些后面我一一介绍。

趋势榜

首先来看趋势榜,其实就是抓取的Github原站点的信息,不过不同的是除了日榜、周榜以及月榜,熊猫给它还定义了按照语言分类和热度趋势、Stars以及更新排序,对比原站点的功能更多。

后台管理

为了方便查看自己觉得不错的项目,熊猫还是搞了用户后台,这里能看到收藏和搜索记录,同时收藏夹支持创建,方便管理不同功能或者不同语言的项目。

设置

重点在后台的设置界面,因为Github如果非登录情况下搜索有限流,所以为了让这个限制不影响使用,熊猫在后台添加了Github Token的填写,可以通过填入它来提升限流,获取方式这里也有指引。同时该界面也是AI功能的设置界面,支持各种LLM的设置。

搜索列表

解除限制之后进行搜索,搜索界面和Github原生差不多,只不过熊猫增加了一些功能,在左侧增加了搜索预设,能保存关键词和搜索条件方便下次直接使用,同时项目详情这里给了项目评分机制和对比选项,可以挑选2-5个项目进行对比。

对比

添加对比列表之后点击右上角的对比就能看到对比情况,系统会根据项目的Stars、Forks、Lssues、语言、开放协议、最近更新以及风险和建议等等进行评估对比,当然这个只是作为参考。

项目详情

来到项目详情,顶部有项目的作者,右侧能看到对比、收藏以及直接跳转Github。最重要的是右下侧,AI配置好之后就可以直接通过AI读取项目然后获得项目摘要,例如介绍这是干什么用的等等,同时也支持AI翻译和问答,问答例如可以问AI该项目如何Docker部署等等。

AI功能区

同时还提供了更详细的仓库健康指数,AI会从活跃度、社区规模、维护质量、文档完整性以及安全合规来评估分数,当然这也是参考。

代码浏览

最下方则是提供了项目代码浏览器,同时点击对应文件之后右侧也支持使用AI进行代码解释,不过该功能目前还不完善,后续熊猫会持续更新。

项目部署

GitMirror的部署也不难,因为涉及到了大量的项目数据,所以为了减轻Github API的搜索压力,熊猫提供了PostgreSQL+meilisearch+
redis的版本,通过redis和PostgreSQL能保存项目的缓存,减轻搜索压力,同时也提供了SQLite模式的轻量版本。

♾️ text 代码:
services:
  app:
    build: .
    image: github-search-mirror:sqlite
    restart: always
    ports:
      - "3000:3000"
    environment:
      NODE_ENV: production
      DATABASE_PROVIDER: sqlite
      SQLITE_DATABASE_PATH: /app/data/github-search-mirror.sqlite
      AUTH_SECRET: ${AUTH_SECRET:?AUTH_SECRET is required}
      NEXTAUTH_URL: ${NEXTAUTH_URL:-http://localhost:3000}
      ADMIN_EMAILS: ${ADMIN_EMAILS:-}
      GITHUB_TOKEN: ${GITHUB_TOKEN:-}
    volumes:
      - ./data:/app/data

以上为轻量模式下的compose文件,其中AUTH_SECRET变量让AI生成即可,其他的项目构建会自动获取,如果想要完整模式版本,可以去项目地址瞅瞅,代码过长熊猫就不单独说明了。

海康智存

如果你的NAS有对应的网络环境能拉取镜像,那么直接搜索镜像ghcr.io/panda-995/gitmirror下载镜像就行。

如果你的NAS环境不允许,也可以通过海康智存R1的Docker管理上传本地镜像,镜像并不大,不到300MB。

镜像导入

导入镜像之后在本地镜像找到刚刚导入的镜像,输入容器名来到容器详情设置这里,存储空间可以新建一个文件夹,命名为gitMirror,随后映射路径设置为/app/data,记得要读写模式。

存储映射

端口容器端口为3000,本地端口随意,不冲突就行,端口类型选择TCP。

端口设置

最后在环境变量这里,我们需要手动添加AUTH_SECRET变量,值让AI帮你生成一个就行。

变量设置

最后启动项目,然后使用海康智存的快捷访问就能访问项目界面了,接下来就是无障碍使用Github了。

写在最后

项目的最终目的还是为了解决Github访问以及搜索功能不齐全的问题,配合AI助手能获得更好的体验,不过项目目前还处于初期阶段,可能会有些UI不协调、小Bug的存在,还请大家见谅,跑得起来就行。

功能介绍

最后项目因为自用,所以后续会持续更新,觉得不错可以关注一下哦!海康马上也有新品发布了,性价比超高,后续熊猫也会出相应的测评报告。

以上便是本次分享的全部内容了。如果你觉得还算有趣或对你有所帮助,不妨点赞收藏,最后也希望能得到你的关注,咱们下期见!

尾图
现在已有 32 次阅读,0 条评论,0 人点赞
Comment:共0条
发表
搜 索 消 息 足 迹
你还不曾留言过..
你还不曾留下足迹..
博主 欢迎来到熊猫的小站,站点内容已全部恢复,不过之前的评论无法恢复,如有友链请在友链界面自行申请 不再显示
博主