42ByteLabs/konarr

GitHub: 42ByteLabs/konarr

Konarr 是一个基于 Rust 开发的轻量级开源容器软件成分分析(SCA)平台,旨在监控服务器及容器供应链中的依赖项和漏洞。

Stars: 10 | Forks: 1

Konarr

[![GitHub](https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge&logo=github&logoColor=white)][github] [![Crates.io Version](https://img.shields.io/crates/v/konarr?style=for-the-badge)][crates-io] [![Crates.io Downloads (recent)](https://img.shields.io/crates/dr/konarr?style=for-the-badge)][crates-io] [![Docs.rs](https://img.shields.io/badge/docs.rs-konarr-66c2a5?style=for-the-badge)][docs] [![GitHub Stars](https://img.shields.io/github/stars/42ByteLabs/konarr?style=for-the-badge)][github] [![GitHub Issues](https://img.shields.io/github/issues/42ByteLabs/konarr?style=for-the-badge)][github-issues] [![Licence](https://img.shields.io/github/license/42ByteLabs/konarr?style=for-the-badge)][license] ⚠️ 正在开发中,处于早期阶段 ⚠️
## 概述 [Konarr][konarr] 是一个简单易用的 Web 界面,用于监控您的服务器、集群和容器供应链中的依赖项和漏洞。 它的设计轻量且快速,资源占用极低。 它使用 [Rust][rust-lang] 编写,使用 [Rocker][rocket] 作为 Web 服务器,并使用 [Vue.js](https://vuejs.org/) 作为前端。
起源故事 这个项目的产生源于我需要监控我的家庭实验室是否存在不安全的依赖项/组件。 所有提供此功能的产品都是专有的,并且需要付费使用。 [2021 年 12 月,Log4Shell (CVE-2021-44228)](https://en.wikipedia.org/wiki/Log4Shell) 爆发,和世界上的大多数人一样,我四处奔忙,试图找出我是否有服务在使用它。 结果发现我确实用了,但确认的过程非常痛苦。 **名字起源:** Konarr 来源于游戏 [Old School Runescape](https://oldschool.runescape.com/) 中的名字 [Konar quo Maten](https://oldschool.runescape.wiki/w/Konar_quo_Maten)(译为 Konar the Hunter,猎人 Konar)。
## 🖼️ 截图
![project-view](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/769e7aa3f3104838.png) ![project-view-dark](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/967369acb8104840.png)
更多截图 **单个项目概览** ![server-view](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/fb0271df35104841.png) **容器概览** ![container-view](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/f1cbed803e104843.png) **依赖项视图** ![dependencies-view](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/a957cabcc7104846.png)
## ✨ 功能 - 简单易用的 Web 界面 - 极快的性能,资源占用极低(使用 [Rust][rust-lang] 编写 🦀) - 实时监控您的容器 - 使用 [Syft][syft] 进行镜像扫描(更多扫描器即将推出) - 编排支持 - Docker / Podman - Docker Compose / Docker Swarm - 🚧 计划支持 Kubernetes - 为您的容器提供软件物料清单 (SBOM) - 🚧 供应链攻击监控 ## 🚀 快速开始 这个小脚本将使用容器在您的机器上安装 Konarr 服务器和代理。 ``` curl https://raw.githubusercontent.com/42ByteLabs/konarr/refs/heads/main/install.sh | bash -s ``` ## 📚 文档
🚧 正在开发中 🚧
## 🛠️ 安装 可以使用 Docker、Podman 或 Cargo(原生)安装 Konarr。 ### 使用 Compose 安装 Konarr 使用 Docker/Podman Compose 时,Konarr 服务器和代理将通过容器安装在您的机器上。
克隆仓库 ``` # 从 GitHub 克隆 Konarr 仓库 git clone https://github.com/42ByteLabs/konarr.git && cd konarr # 更新子模块 git submodule update --init --recursive ```
**启动服务器和代理:** ``` docker-compose up -d ``` ### 💻 Konarr 服务器 Konarr 服务器是用于监控容器的 API 和 Web 界面。 可以使用 Docker/Podman 或 Cargo(原生)安装。 #### 使用 Docker 运行 Konarr 服务器 ``` docker run -it --rm \ -p 9000:9000 \ -v ./data:/data \ -v ./config:/config \ ghcr.io/42bytelabs/konarr:v0.5.1 ```
说明 此命令执行以下操作: - `-it --rm` - 这是传递给 `docker run` 的一组常用标志。`-it` 标志是 `--interactive` 和 `--tty` 的缩写,告诉 Docker 在容器内打开一个交互式终端。`--rm` 标志告诉 Docker 在容器停止运行时自动删除该容器。 - `-p 9000:9000` - 这告诉 Docker 将主机上的端口 9000 映射到容器上的端口 9000。这是 Konarr 服务器默认监听的端口。 - `-v ./data:/data` - 这告诉 Docker 将主机上的 `./data` 目录挂载到容器上的 `/data` 目录。这是 Konarr 默认存储数据的位置。 - `-v ./config:/config` - 这告诉 Docker 将主机上的 `./config` 目录挂载到容器上的 `/config` 目录。这是 Konarr 默认查找配置文件的位置。 - `ghcr.io/42bytelabs/konarr:v0.5.1` - 这是我们想要运行的 Docker 镜像的名称。`ghcr.io/42bytelabs/konarr` 部分是 GitHub Container Registry 上仓库的名称,而 `v0.4.4` 部分是我们想要运行的镜像标签。
#### 通过 Cargo 安装服务器 可以使用 Cargo 安装 `konarr-server`,但不建议在生产环境中使用。 ``` cargo install konarr-server ``` ### 🕵️ Konarr 代理 Konarr 代理是用于监控容器的 Konarr CLI。 它使用 Rust 编写,可作为二进制文件或 Docker 镜像使用。 #### 在 Docker 中运行代理 ``` docker run -it --rm \ -e KONARR_INSTANCE \ -e KONARR_AGENT_TOKEN \ -e KONARR_PROJECT_ID \ ghcr.io/42bytelabs/konarr-agent:v0.5.1 ``` #### 通过 Cargo 安装代理 konarr-cli 是一个可以通过 Cargo 安装的 Rust 二进制文件。 ``` cargo install konarr-cli ``` ### 从源码安装 ``` # 从 GitHub 克隆 Konarr 仓库 git clone https://github.com/42ByteLabs/konarr.git && cd konarr # 更新子模块(client/frontend 是一个子模块) git submodule update --init --recursive # 构建前端 cd client && npm install && npm run build && cd .. # 构建并运行服务器 cargo run -p konarr-server --release -- -c ./konarr.yml ``` ## 🦸 支持 如果有错误或功能请求,请创建 [GitHub Issues][github-issues]。 本项目使用 [语义化版本控制 v2 (Semantic Versioning v2)][semver],在主要版本发布时,将会有破坏性变更。 ## 📓 许可证 本项目根据 Apache2 开源许可条款进行许可。 请参阅 [Apache2][license] 了解完整条款。
标签:AI应用开发, Claude, CVE检测, DevSecOps, Docker, LangChain, Log4Shell, PB级数据处理, Rocket, Rust, Vue.js, Web截图, Web界面, WSL, 上游代理, 依赖管理, 免费开源, 可视化界面, 安全运维, 安全防御评估, 容器安全, 容器监控, 网络流量审计, 自托管, 请求拦截, 轻量级, 通知系统