# kubeconsole **Repository Path**: kylin87/kubeconsole ## Basic Information - **Project Name**: kubeconsole - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-28 - **Last Updated**: 2026-09-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # kubeconsole 一个只监听本机的 Kubernetes 运维控制台。它读取当前 `kubectl` context,提供 Deployment、HPA、Pod、Service 和 Ingress 的查看能力,并支持 Pod Describe、Deployment 重启、修改副本数(允许设为 0)与 HPA min/max 修改。 ## 运行 运行仅需要 Go 1.24+ 和可用的 `kubectl` context。Pod Describe 调用本机 `kubectl describe pod`,因此运行用户还需要能够执行 `kubectl`。仓库已包含打包后的前端资源,因此服务器无需安装 Node.js。 ```bash go build -o bin/kubeconsole ./cmd/kubeconsole ./bin/kubeconsole ``` 也可以使用构建脚本: ```bash bash scripts/build-release.sh ./bin/kubeconsole ``` 对于没有 Go 的 Linux x86_64 服务器,可直接使用仓库 `dist/` 目录中的预构建包: ```bash tar -xzf dist/kubeconsole-linux-amd64.tar.gz ./kubeconsole-linux-amd64 ``` 服务器后续更新时,在宝塔进程守护管理器中先停止 Kubeconsole,再执行: ```bash cd /www/wwwroot/kubeconsole git pull cd dist sha256sum -c SHA256SUMS tar -xzf kubeconsole-linux-amd64.tar.gz ``` 校验通过后再解压。按上述命令解压时,程序路径是 `/www/wwwroot/kubeconsole/dist/kubeconsole-linux-amd64`;确认宝塔中的启动命令指向该路径,然后重新启动进程。 首次启动会要求设置唯一的 `admin` 密码。凭据只以 bcrypt 哈希保存到本机用户配置目录。 首次输入正确密码后,需要使用 TOTP 认证器扫描二维码并完成 MFA 绑定。以后每次登录都必须输入认证器生成的 6 位动态码。MFA 连续错误 3 次会使整个服务全局锁定 5 小时,期间不能登录、查看资源或执行变更操作。 不提供恢复码。认证器丢失时,先停止 Kubeconsole 服务,再以运行服务的同一个系统用户执行: ```bash ./kubeconsole-linux-amd64 --reset-mfa ``` 下次输入正确密码后,页面会重新展示绑定二维码。该操作会清除 MFA 锁定状态,但不会修改 `admin` 密码。 ## 前端开发 修改前端源码时需要 Node.js 20+: ```bash go test ./... cd web && npm install && npm run dev ``` 另开一个终端启动 API: ```bash go run ./cmd/kubeconsole ``` 构建脚本会优先重新打包前端;服务器没有 Node.js 时则直接使用已提交的前端资源。服务默认地址为 `http://127.0.0.1:7777`。