KubePi 是一个独立项目,不依赖 KubeOperator 可独立开发运行

项目结构

  1. .
  2. ├── Dockerfile # 构建容器镜像使用的 dockerfile
  3. ├── Makefile # 编译文件
  4. ├── LICENSE
  5. ├── README.md
  6. ├── go.mod
  7. ├── conf # 配置文件
  8. ├── pkg # 主目录
  9. ├── interanl # 私有业务代码
  10. ├── migrate # 数据库变更文件目录
  11. ├── web
  12. ├── dashboard # 前端 dashboard 模块
  13. ├── kubepi # 前端管理模块
  14. └── terminal # terminal 模块

配置文件

!!! warning “” KubePi 会默认加载该路径下的配置文件 /etc/kubepi/app.yaml,请参考下列配置创建对应目录及配置文件

  1. ```yaml
  2. apiVersion: v1
  3. kind: AppConfig
  4. spec:
  5. server:
  6. bind:
  7. host: 0.0.0.0
  8. port: 80
  9. ssl:
  10. enable: false
  11. certificate:
  12. certificateKey:
  13. db:
  14. path: /var/lib/kubepi/db/kubepi.db
  15. ```

数据库文件

!!! warning “” KubePi 使用 BoltDB 作为底层数据存储,使用 storm 作为上层 ORM 框架

  1. ```
  2. 数据库文件地址 /var/lib/kubepi/db/kubepi.db
  3. ```

构建二进制文件

!!! warning “build”

  1. ```
  2. make build_web
  3. ```

启动后端服务

!!! warning “”

  1. ```
  2. 在 cmd/server 目录运行
  3. go run main.go
  4. ```

启动前端服务

!!! warning “” KubePi 的前端主要包括两部分,需要分别启动

!!! warning “管理模块”

  1. ```
  2. 在 web/kubepi 目录运行
  3. npm install
  4. npm run serve
  5. ```

!!! warning “dashboard 模块”

  1. ```
  2. 在 web/dashboard 目录运行
  3. npm install
  4. npm run serve
  5. ```