1.0.1 • Published 3 months ago

kani-deploy v1.0.1

Weekly downloads
-
License
MIT
Repository
-
Last release
3 months ago

Kubernetes CI/CD 工具

使用 TypeScript 实现的 Kubernetes CI/CD 工具,通过 Kaniko 在 Kubernetes 集群中构建 Docker 镜像并部署。

功能特性

  • ✨ 支持从 Git 仓库拉取代码(包括私有仓库)
  • 🔨 使用 Kaniko 在 K8s 中构建 Docker 镜像
  • 📦 自动推送镜像到私有镜像仓库
  • 🚀 自动部署应用到 Kubernetes
  • 🔍 实时监控构建和部署状态
  • 🧹 自动清理临时资源

前置要求

  • Node.js >= 16
  • Kubernetes 集群
  • 容器镜像仓库(如阿里云 ACR)
  • kubectl 配置文件

安装

bash git clone cd k8s-example npm install npm start

工作原理

  1. 初始化阶段

    • 创建 Docker Registry Secret
    • 验证 Git 和镜像仓库配置
  2. 构建阶段

    • 创建 Kaniko Job
    • 拉取代码并构建镜像
    • 推送到镜像仓库
  3. 部署阶段

    • 创建 Deployment
    • 部署应用
    • 监控部署状态
  4. 清理阶段

    • 清理构建资源
    • 保留部署资源

常见问题

1. 构建失败

检查以下几点:

  • Git 仓库访问权限
  • Dockerfile 路径是否正确
  • 镜像仓库认证是否正确

2. 部署失败

可能的原因:

  • 镜像拉取失败
  • 资源配额不足
  • 端口冲突

3. 权限问题

确保:

  • GitHub PAT 权限足够
  • 镜像仓库认证信息正确
  • Kubernetes RBAC 配置正确

开发计划

  • 支持更多 Git 平台
  • 添加构建缓存
  • 支持多环境配置
  • 添加测试用例
  • 优化错误处理

贡献

欢迎提交 Issue 和 Pull Request!

许可证

MIT

1.0.1

3 months ago

1.0.0

3 months ago