当前位置: 首页 > article >正文

GoCD 持续集成和部署工具配置指南(CentOS 7)

1.GoCD 持续集成和部署工具配置指南

官网直达:https://www.gocd.org/download/#windows

2.概念

1.GoCD 的基础框架由 Server 和 Agent 组成
2.Server 负责控制一切(配置),轮询材料(如代码仓库)的变化,检测到材料变化需要触发 Pipeline 时,将 Job 分配给 Agent 去执行
3.Agent 接收 Server 分配的 Job,执行 Job 下的 Task(运行命令、部署等),并将 Job 的状态抱报告给 Server,由 Server 整理信息判断该 Job 所处 Stage 的状态
4.每个部署业务的机器上都必须安装 Agent。

3.开始部署

curl https://download.gocd.org/gocd.repo -o /etc/yum.repos.d/gocd.repo
yum install -y go-server

4.启动 go-serve

systemctl start go-server
systemctl enable go-server  # 设置开机启动

5.设置 artifact 保存地址

mkdir /opt/artifacts
chown -R go:go /opt/artifacts

6.防火墙开放端口

firewall-cmd --zone=public --add-port=8153/tcp --permanent
firewall-cmd --zone=public --add-port=8154/tcp --permanent
firewall-cmd --reload

7.设置登录验证

yum -y install httpd-tools
htpasswd -B -c /etc/go/passwd_auth goadmin    # 管理员用户
htpasswd -B /etc/go/passwd_auth guomx    # 普通用户

在菜单栏选择 Admin >> Security >> Authorization Configurations,点击 Add 按钮,选择 Password File Authentication Plugin for GoCD ,
在 Password file path 中填写 /etc/go/passwd_auth

8.安装并启动 GoCD agent

yum install -y go-agent
systemctl start go-agent
systemctl enable go-agent  # 设置开机启动

如果是远程访问别的机器上的server

修改配置文件配置go-server的IP:

/usr/share/go-agent/wrapper-config/wrapper-properties.conf

如何将go-agent切换到一个新的go-server?

除了将配置文件 /usr/share/go-agent/wrapper-config/wrapper-properties.conf中的IP进行修改外,还需要删除/var/lib/go-agent/config 目录下的guid.txt和token;

9.访问地址

http://192.168.10.220:8153
https://192.168.10.220:8154

10.卸载

rpm -q go-server 
rpm -e go-serverXXXXX 
find / -name 'go-server' 
rm -rf XXXgo-serverXXX/

11.文档

https://api.gocd.org/23.3.0/#get-all-authorization-configurations

12.GoCD来处理使用SSH密钥进行身份验证的私有git存储库

切换go用户
sudo su - go
执行
ssh-keygen 
再切回root账号
生成的证书目录地址
/var/go/.ssh

13.在GoCD中使用 sudo命令执行脚本时,需要输入密码的问题

chmod u+w /etc/sudoers

添加代码:go ALL=(ALL) NOPASSWD:ALL

//进行修改,修改完成之后:
chmod u-w /etc/sudoers

14.指定agent部署

https://blog.csdn.net/hi_software/article/details/129107551

15.配置环境变量

在 environment variables 选项里面配置
GOPROXY、GOROOT、GOPATH、PATH 等环境变量

在这里插入图片描述


http://www.kler.cn/a/449347.html

相关文章:

  • STM32HAL库中RTC闹钟设置时分秒,年月日
  • Redis篇--常见问题篇6--缓存一致性1(Mysql和Redis缓存一致,更新数据库删除缓存策略)
  • springboot中使用gdal将表中的空间数据转shapefile文件
  • Android 常用布局
  • Android 代码模式的理解
  • ctfshow web入门文件上传总结
  • Kafka常用集群配置参数
  • 精确与高效:二分查找的完整指南
  • Jenkins引发的多jdk设置问题
  • [AI]解释 Git 的基本概念和使用方式
  • FreeSWITCH的API与APP详解
  • 技术速递|使用 Dependabot 管理 .NET SDK 更新
  • C语言初阶习题【15】猜数字游戏
  • 数字孪生技术在智慧园区管理平台中的应用
  • [AIGC知识] layout理解
  • istio-proxy不打印访问日志怎么解决?
  • 最长公共子序列【东北大学oj数据结构10-3】C++
  • 我的PHP学习之路:经验分享与建议
  • leetcode-15.三数之和-day15(debug中...)
  • 【PythonGui实战】自动摇号小程序
  • 数据结构与算法学习笔记----质数
  • Rocky DEM tutorial6_High pressure grinding roll_高压辊磨机
  • DCDC Buck模式的电感值参数计算
  • 如何高效利用Python爬虫按关键字搜索苏宁商品
  • CSPM认证最推荐学习哪个级别?
  • 解决react 路由切换,页面闪屏的bug