K8s Manager Desktop 是一个专为 DevOps 工程师和运维人员设计的桌面应用,通过图形化界面简化了原本繁琐的 Kubernetes 环境管理和切换操作。
- 简化操作:将复杂的命令行操作转化为可视化界面操作
- 提升效率:一键完成环境配置、测试、同步、切换
- 集中管理:统一管理所有 K8s 环境的 SSH 连接和配置信息
- 降低门槛:图形界面友好,无需记忆复杂命令
- 开箱即用:双击安装,无需复杂配置
- 多环境支持:管理多个 K8s 集群环境
- 可视化配置:通过表单添加和编辑环境信息
- 分组管理:支持环境分组(开发、测试、生产等)
- 快速搜索:根据名称快速过滤环境
- 连接测试:一键测试 SSH 连接可用性
- 密钥认证:支持密码和 SSH 密钥两种认证方式
- 批量操作:支持批量测试多个环境连接
- 自动同步:从远程服务器自动获取 kubeconfig 文件
- 智能合并:自动合并多个环境配置到本地
- 配置预览:同步前预览配置内容
- 版本管理:保留配置历史记录
- 内置终端:集成 xterm.js 提供完整的终端体验
- 环境隔离:每个环境可独立打开终端会话
- 命令执行:直接在终端中执行 kubectl 命令
- Topic 浏览:列出 Kafka 集群中的所有 Topics
- 消息预览:快速预览 Topic 中的最新消息
- 时间搜索:按时间范围搜索历史消息
- 关键字过滤:支持按关键字实时过滤消息
- 数据导出:将消息导出为 JSON 文件
- YAML 预览:查看当前环境的 kubeconfig 详细内容
- 语法高亮:支持 YAML 语法高亮显示
- 一键复制:快速复制配置内容
- 操作日志:记录所有关键操作和错误信息
- 实时更新:日志实时更新,便于排查问题
- 日志过滤:按类型、时间过滤日志
前往 Releases 页面下载适合你系统的安装包:
| 平台 | 架构 | 下载文件 | 大小 |
|---|---|---|---|
| macOS | Apple Silicon (M1/M2/M3) | K8s Manager-1.0.0-arm64.dmg |
~106 MB |
| macOS | Intel | K8s Manager-1.0.0-x64.dmg |
~111 MB |
| Windows | x64 | K8s Manager-Setup-1.0.0-x64.exe |
~82 MB |
| Windows | ARM64 | K8s Manager-Setup-1.0.0-arm64.exe |
~84 MB |
| Windows | Universal | K8s Manager-Setup-1.0.0.exe |
~166 MB |
| Linux | x64 (AppImage) | K8s Manager-1.0.0-x86_64.AppImage |
~114 MB |
| Linux | ARM64 (AppImage) | K8s Manager-1.0.0-arm64.AppImage |
~114 MB |
| Linux | x64 (Debian/Ubuntu) | K8s Manager-1.0.0-amd64.deb |
~75 MB |
| Linux | ARM64 (Debian/Ubuntu) | K8s Manager-1.0.0-arm64.deb |
~70 MB |
最新版本 v1.0.1 - 新增 Kafka 数据管理、全局环境选择等功能
- 下载适合你 Mac 架构的 DMG 文件
- 打开 DMG 文件
- 将
K8s Manager拖拽到Applications文件夹 - 首次打开时,如果遇到安全提示:
# 方法1:在系统偏好设置中允许 # 打开 系统偏好设置 > 安全性与隐私 > 点击 "仍要打开" # 方法2:使用命令行移除隔离属性 xattr -cr /Applications/K8s\ Manager.app
brew install --cask k8s-manager- 下载对应架构的
.exe安装文件:- 推荐:下载
K8s Manager-Setup-1.0.0.exe(包含所有架构) - 或根据你的系统选择 x64 或 ARM64 版本
- 推荐:下载
- 双击运行安装程序
- 选择安装路径(可自定义)
- 安装完成后,从开始菜单或桌面快捷方式启动
注意事项:
- 首次运行时,Windows Defender 可能会显示安全警告,点击"更多信息"然后"仍要运行"
- 如需卸载,可以通过"设置 > 应用 > 已安装的应用"进行卸载
AppImage 是独立可执行文件,无需安装,适用于所有 Linux 发行版。
# 1. 下载 AppImage 文件
wget https://github.com/lirui001/k8s-env-manager/releases/download/v1.0.0/K8s\ Manager-1.0.0-x86_64.AppImage
# 2. 添加执行权限
chmod +x K8s\ Manager-1.0.0-x86_64.AppImage
# 3. 运行应用
./K8s\ Manager-1.0.0-x86_64.AppImage可选:集成到系统
# 安装 AppImageLauncher (推荐)
sudo apt install appimagelauncher # Debian/Ubuntu
sudo dnf install appimagelauncher # Fedora
# 或手动创建桌面快捷方式
mkdir -p ~/.local/share/applications
cat > ~/.local/share/applications/k8s-manager.desktop <<EOF
[Desktop Entry]
Name=K8s Manager
Exec=/path/to/K8s Manager-1.0.0-x86_64.AppImage
Icon=k8s-manager
Type=Application
Categories=Development;
EOF# 1. 下载 .deb 文件
wget https://github.com/lirui001/k8s-env-manager/releases/download/v1.0.0/K8s\ Manager-1.0.0-amd64.deb
# 2. 安装
sudo dpkg -i K8s\ Manager-1.0.0-amd64.deb
# 3. 安装依赖(如果有缺失)
sudo apt-get install -f
# 4. 启动应用
k8s-manager# 即将支持
yay -S k8s-manager-bin- 启动应用:双击打开 K8s Manager
- 添加环境:点击 "环境管理" 标签页,添加你的第一个 K8s 环境
- 填写信息:
- 环境名称:如
production-cluster - SSH 主机:如
192.168.1.100 - SSH 端口:默认
22 - SSH 用户名:如
admin - 认证方式:选择密码或密钥
- 远程配置路径:如
/etc/rancher/k3s/k3s.yaml
- 环境名称:如
- 测试连接:点击 "测试连接" 确保配置正确
- 同步配置:点击 "同步配置" 获取远程 kubeconfig
- 切换环境:点击 "激活" 切换到该环境
- 点击右上角 "添加环境" 按钮
- 填写环境信息(必填项已标注 *)
- 点击 "保存" 完成添加
- 在环境列表中点击 "编辑" 按钮
- 修改需要更新的信息
- 点击 "保存" 保存修改
- 在环境列表中点击 "删除" 按钮
- 确认删除操作
点击 "测试连接" 按钮,系统会:
- 测试 SSH 连接是否可用
- 验证远程配置文件是否存在
- 显示测试结果
点击 "同步配置" 按钮,系统会:
- 通过 SSH 从远程服务器下载 kubeconfig
- 修改配置中的环境标识
- 合并到本地
~/.kube/config - 自动备份原有配置
点击 "激活" 按钮,系统会:
- 将该环境设置为 kubectl 的当前上下文
- 更新 Dashboard 显示当前环境
- 后续的 kubectl 命令将作用于该环境
- 点击 "终端" 标签页
- 选择要连接的环境
- 点击 "连接" 打开 SSH 会话
- 在终端中执行命令,如:
kubectl get pods kubectl get services kubectl logs <pod-name>
- 点击 "配置查看" 标签页
- 选择要查看的环境
- 查看完整的 kubeconfig YAML 内容
- 可以点击 "复制" 按钮复制配置
在 "设置" 页面可以配置:
- SSH 默认端口:设置 SSH 连接的默认端口
- 配置文件路径:自定义 kubeconfig 存储路径
- 主题设置:切换深色/浅色主题
- 语言设置:切换界面语言
- Node.js 16.x 或更高版本
- npm 或 yarn
- Git
git clone https://github.com/lirui001/k8s-env-manager.git
cd k8s-env-managernpm installnpm run dev# 构建 macOS 版本(包含 x64 和 arm64)
npm run build:mac构建完成后,安装包位于 release 目录:
K8s Manager-1.0.0-arm64.dmg(Apple Silicon)K8s Manager-1.0.0-x64.dmg(Intel)
# 构建 Windows 版本
npm run build:win# 构建 Linux 版本
npm run build:linuxk8s-env-manager/
├── build/ # 构建资源(图标等)
├── dist/ # Vue 构建输出
├── dist-electron/ # Electron 构建输出
├── electron/ # Electron 主进程代码
│ ├── main/ # 主进程
│ └── preload/ # 预加载脚本
├── release/ # 应用安装包输出
├── src/ # Vue 源代码
│ ├── views/ # 页面组件
│ ├── stores/ # Pinia 状态管理
│ ├── router/ # Vue Router 配置
│ └── styles/ # 样式文件
├── electron-builder.json # Electron Builder 配置
├── package.json # 项目依赖
├── tsconfig.json # TypeScript 配置
└── vite.config.ts # Vite 配置
前端框架
- Vue 3 - 渐进式 JavaScript 框架
- TypeScript - 类型安全的 JavaScript 超集
- Vite - 下一代前端构建工具
UI 框架
- Element Plus - Vue 3 组件库
- Element Plus Icons - 图标库
状态管理
- Pinia - Vue 官方状态管理库
路由
- Vue Router - Vue 官方路由
Electron
- Electron 28 - 跨平台桌面应用框架
- electron-builder - 应用打包工具
核心功能库
- ssh2 - SSH 客户端
- js-yaml - YAML 解析器
- xterm - 终端模拟器
- xterm-addon-fit - 终端自适应插件
-
创建功能分支
git checkout -b feature/your-feature-name
-
进行开发
- 遵循 TypeScript 和 Vue 3 最佳实践
- 使用 Composition API
- 保持代码简洁和可维护性
-
代码检查
npm run lint
-
类型检查
npm run typecheck
-
提交代码
git add . git commit -m "feat: add your feature description"
-
推送分支
git push origin feature/your-feature-name
- 在 VS Code 中打开项目
- 按 F5 启动调试
- 在
electron/main目录中设置断点
- 运行
npm run dev - 在应用中打开开发者工具(View > Toggle Developer Tools)
- 使用浏览器调试工具
如果打开应用时遇到 "无法验证开发者" 的提示:
- 打开
系统偏好设置>安全性与隐私 - 在 "通用" 标签页底部,点击 "仍要打开"
- 或者在终端中运行:
xattr -cr /Applications/K8s\ Manager.app
- 检查 SSH 主机地址和端口是否正确
- 确认用户名和密码/密钥是否正确
- 检查防火墙是否允许 SSH 连接
- 尝试使用系统终端手动连接测试
- 确认远程配置文件路径是否正确
- 检查 SSH 用户是否有权限读取配置文件
- 查看日志页面获取详细错误信息
- macOS 支持(Intel 和 Apple Silicon)
- Windows 平台支持(x64 和 ARM64)
- Linux 平台支持(.deb 和 AppImage)
- 配置文件加密存储
- 多语言支持(英文、中文)
- kubectl 命令补全
- 资源监控面板(Pods、Services 等)
- 多个 kubeconfig 配置文件管理
- 主题定制功能
- Helm Charts 管理
欢迎贡献代码、提出建议或报告问题!
- Fork 本仓库
- 创建你的特性分支 (
git checkout -b feature/AmazingFeature) - 提交你的修改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启一个 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
- Electron - 跨平台桌面应用框架
- Vue.js - 渐进式 JavaScript 框架
- Element Plus - Vue 3 组件库
- xterm.js - 终端模拟器
- ssh2 - SSH 客户端库
如有问题或建议,欢迎通过以下方式联系:
- GitHub Issues: 提交 Issue
⭐ 如果这个项目对你有帮助,请给一个 Star!⭐