共计 970 个字符,预计需要花费 3 分钟才能阅读完成。
介绍
OneDev 是一个开源的自建 Git 服务,自带工单看板和 CI/CD,我的项目地址:
https://github.com/theonedev/…
在 CI/CD 工作须要耗费大量资源时,OneDev 能够将其作为 pod 运行在 Kuberntes 集群中。然而 Kubernetes 集群自建较为麻烦,而应用云服务商的集群又较贵。基于此,OneDev 从 4.10 版本开始提供基于 Agent 的 CI/CD 集群。Agent 设计为零保护,OneDev server 在降级时会主动降级所有连贯的 Agent。
如何配置
咱们通过一个简略的实例来演示如果配置基于 Agent 的集群:
- 在 Linux 或者 Mac 里运行上面的命令启动 OneDev:
docker run –rm -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd)/onedev:/opt/onedev -p 6610:6610 -p 6611:6611 1dev/server - 关上浏览器拜访 http://localhost:6610 来实现设置
- 如下所示拜访 Agent 治理页面并下载 Agent 安装包(运行在 Mac 下的 Docker 有点慢,请急躁期待):
- 简略起见,咱们间接在本机装置 Agent。首先如上图确保装置了 JDK,Docker 和 Git。下载 Agent 安装包并解压到选定的目录。而后从该目录运行 bin/agent.sh console 来启动 Agent。如果下载时 server url 没有正确设置,能够通过在 conf/agent.properties 里批改并重新启动 Agent 让其失效。
- Agent 连贯上时就会在治理页面显示为在线:
- 当初咱们创立一个 Job Executor 来应用该 Agent。切换到 Job Executors 页面,删除默认的 auto-discover executor,并增加一个 Remote Docker Executor,输出名称,其余属性应用默认值。测试并保留:
- 当初您能够创立一个测试项目,定义 Build Spec,增加一个简略的 CI 工作并运行它,该工作将在 Agent 上运行。OneDev 在为 CI 任务分配 Agent 时,会依据 Agent 的 cpu/memory 容量以及工作所需的 cpu/memory 来进行抉择。当没有 Agent 的 cpu/memory 满足时,工作将会进入期待状态。
谢谢关注!
正文完