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.开始部署

bash 复制代码
curl https://download.gocd.org/gocd.repo -o /etc/yum.repos.d/gocd.repo
yum install -y go-server

4.启动 go-serve

bash 复制代码
systemctl start go-server
systemctl enable go-server  # 设置开机启动

5.设置 artifact 保存地址

bash 复制代码
mkdir /opt/artifacts
chown -R go:go /opt/artifacts

6.防火墙开放端口

bash 复制代码
firewall-cmd --zone=public --add-port=8153/tcp --permanent
firewall-cmd --zone=public --add-port=8154/tcp --permanent
firewall-cmd --reload

7.设置登录验证

bash 复制代码
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

bash 复制代码
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.访问地址

bash 复制代码
http://192.168.10.220:8153
https://192.168.10.220:8154

10.卸载

bash 复制代码
rpm -q go-server 
rpm -e go-serverXXXXX 
find / -name 'go-server' 
rm -rf XXXgo-serverXXX/

11.文档

bash 复制代码
https://api.gocd.org/23.3.0/#get-all-authorization-configurations

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

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

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

bash 复制代码
chmod u+w /etc/sudoers

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

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

14.指定agent部署

bash 复制代码
https://blog.csdn.net/hi_software/article/details/129107551

15.配置环境变量

bash 复制代码
在 environment variables 选项里面配置
GOPROXY、GOROOT、GOPATH、PATH 等环境变量
相关推荐
我爱学习好爱好爱5 分钟前
Logstash 数据管道测试案例:从 Filebeat 接收日志并输出至黑屏幕与 Elasticsearch(基于Rocky Linux 9.6)
大数据·linux·elasticsearch
桌面运维家11 分钟前
Windows VHD虚拟磁盘技术详解与应用指南
linux·运维·服务器
hy____12328 分钟前
Linux_网络基础2
linux·服务器·网络
微露清风1 小时前
系统性学习Linux-第六讲-Ext文件系统
linux·服务器·学习
查尔char1 小时前
CentOS 7 编译安装 Python 3.10 并解决 SSL 问题
python·centos·ssl·pip·python3.11
喵叔哟1 小时前
6. 【Blazor全栈开发实战指南】--组件通信与共享状态
linux·网络·windows
桌面运维家1 小时前
云桌面vDisk解决方案:Windows/Linux高效部署与优化
linux·运维·服务器
wsoz1 小时前
GCC编译
linux·c语言·嵌入式·gcc
xlq223222 小时前
26(下).库的理解与加载
linux·运维·服务器
wbs_scy2 小时前
Linux 动静态库完全指南:制作、使用、原理与实战
linux·运维·服务器