gitlab+jenkins 搭建
继前一篇gitlab,这一篇介绍jenkins搭建并与gitlab进行集成---这里不是详细的步骤
环境
系统:centos 7.3
jenkins版本:jenkins-2.176.1-1.1.noarch
# vim /etc/selinux/config SELINUX=disabled # setenforce 0 # getenforce
官方安装文档
https://pkg.jenkins.io/redhat-stable/
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key yum install jenkins # systemctl start jenkins http://**:8080/
第一次打开界面后,会根据提示 添加
# cat /var/lib/jenkins/secrets/initialAdminPassword
选择安装插件--推荐安装,全部成功
--这里如果遇到offline,详细参考文章末尾处理
实例配置
Jenkins URL: http://*:8080/
创建用户,实例配置后,进行使用jenkins
--插件管理
--凭据管理
--创建任务
--github配置(如果这里添加添加报错,详细见文章末尾)
--构建触发器
--gitlab --user settings --access tokens
创建Personal Access Tokens=**************** # curl -X PUT --header "PRIVATE-TOKEN: *************" 'http://*****/api/v4/application/settings?allow_local_requests_from_hooks_and_services=true'
创建gitlab hook
--RUL是在jenkins对应任务中的rul,token是上面generate生成的token
在sourcetree客户端等执行git的一系列操作
然后push
在jenkins
目前就测试到这里
--错误处理
1
--运行:立即构建,控制台输出 --1 > git fetch --tags --progress git@*:dba/mysql_test.git +refs/heads/*:refs/remotes/origin/* ERROR: Error cloning remote repo 'origin' hudson.plugins.git.GitException: Command "git fetch --tags --progress git@*:dba/mysql_test.git +refs/heads/*:refs/remotes/origin/*" returned status code 128: stdout: stderr: Permission denied, please try again. Permission denied, please try again. Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). fatal: Could not read from remote repository.
解决
解决: --1 在gitlab添加ssh key user settings--ssh keys/ [root@jenkins ~]# cat .ssh/id_rsa.pub ##添加该密钥 --2 在jenkins的工程 源码管理-git-URL= git@**:root/hq_test.git credentials=root, [root@jenkins ~]# cat .ssh/id_rsa ##添加该密钥
2 offine处理
分别使用看谁能下载
wget https://updates.jenkins.io/update-center.json
wget http://updates.jenkins.io/update-center.json
看哪一个能ping通,就修改为哪一个,再重启jenkins
# systemctl stop jenkins # systemctl start jenkins [root@localhost opt]# find / -name "hudson.model.UpdateCenter.xml" /home/data/jenkins/hudson.model.UpdateCenter.xml [root@localhost opt]# vim /home/data/jenkins/hudson.model.UpdateCenter.xml <?xml version='1.1' encoding='UTF-8'?> <sites> <site> <id>default</id> <url>http://updates.jenkins.io/update-center.json</url> </site> </sites>
分类:
gitlab
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构