一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
一、开源项目简介KubePi [kubəˈpaɪ],一个现代化的 K8s 面板。
KubePi 是一个现代化的 K8s 面板。KubePi 允许管理员导入多个 Kubernetes 集群,并且通过权限控制,将不同 cluster、namespace 的权限分配给指定用户;允许开发人员管理 Kubernetes 集群中运行的应用程序并对其进行故障排查,供开发人员更好地处理 Kubernetes 集群中的复杂性。
二、开源协议使用GPL-3.0开源协议
三、界面展示四、功能概述KubePi 是一个现代化的 K8s 面板。KubePi 允许管理员导入多个 Kubernetes 集群,并且通过权限控制,将不同 cluster、namespace 的权限分配给指定用户。它允许开发人员管理 Kubernetes 集群中运行的应用程序并对其进行故障排查,供开发人员更好地处理 Kubernetes 集群中的复杂性。五、技术选型项目结构.├── Dockerfile # 构建容器镜像使用的 dockerfile├── Makefile # 编译文件├── LICENSE├── README.md├── go.mod├── conf # 配置文件├── pkg # 主目录├── interanl # 私有业务代码├── migrate # 数据库变更文件目录├── web│ ├── dashboard # 前端 dashboard 模块│ ├── kubepi # 前端管理模块│ └── terminal # terminal 模块 配置文件KubePi 会默认加载该路径下的配置文件 /etc/kubepi/app.yaml,请参考下列配置创建对应目录及配置文件apiVersion: v1kind: AppConfigspec: server: bind: host: 0.0.0.0 port: 80 ssl: enable: false certificate: certificateKey: db: path: /var/lib/kubepi/db/kubepi.db数据库文件KubePi 使用 BoltDB 作为底层数据存储,使用 storm 作为上层 ORM 框架数据库文件地址 /var/lib/kubepi/db/kubepi.db构建二进制文件make build_web启动后端服务# 在 cmd/server 目录运行 go run main.go启动前端服务KubePi 的前端主要包括两部分,需要分别启动
管理模块在 web/kubepi 目录运行
npm installnpm run servedashboard 模块在 web/dashboard 目录运行
npm installnpm run serve安装说明docker非持久化部署# 安装sudo docker run --privileged -d --restart=unless-stopped -p 80:80 1panel/kubepi持久化部署# 创建持久化目录mkdir -p /opt/kubepi# 安装sudo docker run --privileged -d -v /opt/kubepi:/var/lib/kubepi --restart=unless-stopped -p 80:80 1panel/kubepi登录系统地址: http://localhost用户名: admin密码: kubepikubernetes详细内容请查看 README.md 文档
六、源码地址访问一飞开源:https://code.exmay.com/