多數企業出於安全、穩定、隱私等方面的考慮,都會選擇在內網搭建代碼托管平台。隨着企業的發展,項目會越來越多。
由於項目數量太多和人員的流動,企業中很難有人能掌握所有代碼的細節,當想要統一排查代碼是否包含某類敏感信息,或檢查是否使用了某些不安全的方法時,就需要開發人員各自手工排查自己負責的代碼,費時費力。
因此,企業全庫的代碼搜索就變得非常重要。尤其對於將代碼通過 GitLab 部署在本地服務器的企業,由於缺少了雲端托管平台自身集成的搜索引擎,想要在本地進行全局的代碼搜索就變得異常困難。
就在近期 Gitee 團隊開源了免費代碼搜索工具 Kooder,目標是為包括 Gitee/GitLab/Gitea 在內的代碼托管系統提供源碼、倉庫和 Issue 的搜索服務。
Kooder 直擊企業內部代碼搜索的痛點,不僅完全開源且部署方便。迫不及待上手的小伙伴可以訪問 Gitee 上的主倉地址,查看(star)項目:
Gitee(速度快):https://gitee.com/koode/kooder
簡介
Kooder:開源的基於 Java 實現的代碼搜索平台。目標是為包括 Gitee/GitLab/Gitea 代碼托管系統提供 自動的源碼、倉庫和 Issue 的搜索服務。幫助提高搜索代碼、問題等信息的效率,同時內網環境保證代碼的安全性。
架構
服務包含兩個模塊,分別是 gateway 和 indexer。其中 gateway 用來接受來自 HTTP 的索引任務, 對任務進行檢查后存放到隊列中; 同時 gateway 還接受搜索的請求,並返回搜索結果給客戶端。而 indexer 進程負責監控隊列中的索引任務, 並將這些要新增、刪除和修改索引的任務更新到索引庫中。
core
核心對象和公共類gateway
用來接收來自 HTTP 的索引和搜索的請求indexer
構建、更新和刪除索引的服務
界面
貢獻
Kooder 有詳細的文檔、環境搭建和部署的步驟,同時還提供了便捷的 Docker 安裝方式。讓你不管是閱讀它的源碼、本地運行和調試,還是二次開發和內部部署,都不是難事!
點個 「Star」 支持每一個解決痛點的開源項目!最后,歡迎大家給 Kooder 貢獻代碼和反饋問題哦!
Gitee(速度快):https://gitee.com/koode/kooder
項目遵循 Apache-2.0 開源協議,歡迎開發者們自由提交 Issue 和 PR。