atomci

atomci

云原生CICD平台简化中小企业Kubernetes部署流程

AtomCI是开源的云原生CICD平台,旨在简化中小企业的Kubernetes部署流程。平台支持多种代码源和服务集成,提供高并发流水线、云原生YAML支持和多环境管理功能。通过优化部署过程,AtomCI帮助企业专注于业务发展,其功能特性适合各类DevOps团队使用。

AtomCICICD平台云原生Kubernetes流水线Github开源项目
<div align="center">

<a href="https://go-atomci.github.io/atomci-press/" target="_blank" rel="noopener noreferrer">AtomCI</a>

<a href="https://goreportcard.com/report/github.com/go-atomci/atomci"><img src="https://goreportcard.com/badge/github.com/go-atomci/atomci" alt="A+"></a> Release codecov docker_pulls License

文档 | 在线体验 | Releases

</div>

介绍

AtomCI 一款云原生CICD平台,致力于让中小企业快速落地Kubernetes,支持k8s/reigstry/jenkins/代码源的轻松集成,高并发的流水线,云原生yaml支持,多环境灵活管理,权限控制等, 代码均已开源, 您的star 是我们开源的动力,非常感谢(:

为什么选择 atomci

  • 多代码源轻松集成( gitlab/gihub/gitee/gitea/gogs )
  • 强大的服务集成(不论是阿里云 /腾讯云,还是自建 k8s ;不管是自建 harbor 还是公有镜像仓库;均可以轻松集成)
  • 流水线灵活自定义
  • 支持原生的 yaml 应用编排
  • 环境灵活新增 /删除
  • 部署方式简单
  • 更多期待你的体验...

架构图

┌─────────┐ │ │ │ Git Scm ├──────┐ ┌───────────────────────┐ ┌──────────┐ ┌───────────────────────┐ │ │ │ │ AtomCI │ │ │ │ │ └─────────┘ │ │ │ │ │ │ ┌────────────────┐ │ │ │ Frontend (Vue) │ │ │ │ │ jnlp-agent pod1│ │ ├──────► ├────► │ │ └────────────────┘ │ ┌──────────┐ │ │ │ │ ├───► │ │ │ │ │ Backend (Go) ◄────┤ Jenkins │ │ ┌────────────────┐ │ │ Registry ├─────┤ │ │ │ │ │ │ jnlp-agent pod2│ │ │ │ │ │ │ │ │ │ └────────────────┘ │ └──────────┘ │ └──────────┬────────────┘ │ │ │ .... │ │ │ │ │ │ ┌────────────────┐ │ ┌───────────┐ │ ┌──────────┴────────────┐ ├──────────┤ │ │ jnlp-agent podn│ │ │ │ │ │ │ │k8s/docker│ │ └────────────────┘ │ │ Kubernetes│ │ │ MySQL │ │ or │ │ │ │ ├────┘ │ │ │ warfile │ │ agent on kubernetes │ └───────────┘ └───────────────────────┘ └──────────┘ └───────────────────────┘

在线体验

在线体验

账号密码备注
atomciatomci123456角色为developer, 已移除admin的体验权限

:

  • 体验帐户为授权用户,不显示“系统管理”的配置页面(且当前环境未配置k8s资源及jenkins资源),
  • 想体验管理员角色可 本地docker安装 完整体验,也可参看视频链接

视频演示

  1. 概述及如何安装部署 视频链接
  2. 介绍及快速开始 视频链接
  3. 5分钟全流程体验 视频链接

快速开始

一键部署最新版本

  1. 准备一台可以正常运行的linux服务器(支持MacOS)
  2. 安装Docker 和 Docker Compose
curl -sSL https://raw.githubusercontent.com/go-atomci/atomci/master/deploy/docker-compose/quick_start.sh | bash

如何本地运行

前置条件

  • go 1.18+
  • node v14.20.0
  • yarn v1.22.5
  • mysql 5.7

创建数据库

> create database atomci character set utf8mb4;

修改配置

# conf/app.conf [DB] url = root:root@tcp(127.0.0.1:3306)/atomci?charset=utf8mb4 [notification] dingEnable = 1 # 启用钉钉通知;0:不启用,1:启用 ding = 钉钉机器人 mailEnable = 1 # 启用邮件通知;0:不启用,1:启用 smtpHost = SMTP服务器 smtpPort = 465 smtpAccount = 邮件账号 smtpPassword = 邮件密码

注: 对于[ldap],[jwt], [atomci]可以参照附录-『配置说明』进行修改

启动后端

# linux/mac环境 $ make run # windowns环境,或是没有make命令 $ go build -o atomci cmd/atomci/main.go; ./atomci

启动前端

$ cd web # 安装依赖 $ yarn install #仅首次运行时需要执行 # 运行 $ yarn run dev

访问

# 默认用户名/密码 admin/123456 http://your-ip:8081

如何构建镜像

前端

$ cd web $ pwd # ./atomci/web/ $ cd web ; docker build .

后端

$ pwd # ./atomci $ docker build .

如果你使用 docker-compsoe方式部署的话,可以通过替换镜像地址的方式,即可使用master分支的最新代码.

贡献代码

可查阅AtomCI项目计划,在对应issues中回复认领,或者直接提交PR,感谢你对AtomCI的贡献
贡献包括但不限于以下方式:

  • 帮助文档
  • Bug修复
  • 新功能提交
  • 代码优化
  • 测试用例完善

请参阅Contribution Guide 获取更多的信息.

互动交流

AtomCI开发者

<a href="https://github.com/go-atomci/atomci/graphs/contributors"> <img src="https://contrib.rocks/image?repo=go-atomci/atomci" /> </a>

已知问题

Issues是本项目唯一的沟通渠道,如果在使用过程中遇到问题,请先查阅文档,如果仍无法解决,请查看相关日志,保存截图信息,给我们提交 issue,我们会及时标记、修复。

AtomCI 因你而变。


AtomCI 用户交流群

可添加 微信Wechat 邀请入群

给我鼓励

Image

附录

配置说明

配置项默认值说明
default::appnameatomci应用名
default::httpport8080应用侦听端口
default::runmodedev运行模式dev|prod
default::copyrequestbodytrue是否允许在 HTTP 请求时,返回原始请求体数据字节
日志配置 <br/>
log::logfilelog/atomci.log日志文件
log::level7日志级别
log::separate["error"]分隔error独立一个文件, 默认是atomci.error.log
DB配置信息 <br/>
DB::urlroot:root@tcp(127.0.0.1:3306)/atomci?charset=utf8mb4数据库的链接信息
DB::debugfalse是否开启debug
DB::rowsLimit5000
DB::maxIdelConns100
DB::maxOpenConns200
LDAP 配置信息 <br/>
ldap::hostldap.xxx.com
ldap::port389
ldap::bindDNldap@xx.com
ldap::bindPasswordXxx..,
ldap::userFilter(samaccountname=%s)
ldap::baseDNOU=Xxx,DC=xx,DC=com
JWT 配置 <br/>
jwt::secretchangemeforsecurity jwt的加密使用的字段,建议修改
<br/>
atomci::urlhttp://localhost:8080AtomCI 回调地址 

编辑推荐精选

博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

下拉加载更多