Skip to content

Repository files navigation

Cubectl

图形化的 Kubernetes 管理工具:多集群管理、K8S 资源管理、Helm 应用市场一键部署、监控、IM/邮件通知、临时终端、MCP 服务等。

目录结构

Cubectl/
├── cmd/                 # Go 后端入口 (cubectl-server)
├── internal/            # 后端业务逻辑(按模块划分)
│   └── web/             # 内嵌前端 dist(go:embed)+ SPA 静态服务
├── pkg/                 # 后端可复用包
├── config/              # 后端配置文件
├── deployments/         # 后端部署(docker / helm)
├── go.mod / go.sum      # Go 模块定义
├── web/                 # 前端工程(React + TypeScript + Vite)
│   ├── src/             # 前端源码
│   ├── deploy/          # 前端独立部署配置(nginx / k8s,可选)
│   ├── Dockerfile
│   ├── package.json
│   └── vite.config.ts
├── docs/                # 项目文档
└── LICENSE

技术栈

  • 后端:Go + Hertz + Postgres + Redis + Neo4j + JWT
  • 前端:React + TypeScript + Vite + Ant Design + Zustand/TanStack Query + xterm.js + Monaco

快速开始

详见 docs/04-快速开始.md

后端

go run ./cmd/cubectl-server

前端

cd web
npm install
npm run dev      # 开发:http://127.0.0.1:5173 (代理 /api 到 8080)
npm run build    # 产出 web/dist

开发联调远端后端:在 web/.env 写入 VITE_DEBUG=true,前端 API 与 WebSocket 将指向 https://debug.example.com。 纯前端预览(无后端):写入 VITE_USE_MOCK=true,走内置 mock。

一体化构建(单镜像)

deployments/docker/Dockerfile 三阶段构建,把前端打包进 Go 二进制,单个容器同时提供 API 与 SPA:

docker build -f deployments/docker/Dockerfile -t cubectl:latest .
docker run -p 8080:8080 \
  -e CUBECTL_DB_HOST=... -e CUBECTL_DB_PASSWORD=... \
  -e CUBECTL_REDIS_HOST=... -e CUBECTL_JWT_SECRET=... \
  cubectl:latest
# 浏览器打开 http://localhost:8080  (API + 前端同源,无需 nginx)

如需前端独立部署(nginx 反代后端),仍可用 web/Dockerfile + web/deploy/nginx.conf

文档

About

K8S 图形化管理工具

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages