项目开发环境搭建手记(5.Jenkins搭建)

Gitlab配置webhook报错:Urlis blocked: Requests to the local network are not allowed解决 阅读详情

作者:fbysss
QQ:溜酒酒吧酒吧吾散
blog:blog.youkuaiyun.com/fbysss
声明:本文由fbysss原创,转载请注明出处

一、下载

下载地址:http://pkg.jenkins-ci.org/redhat/

这里有下载包

注意:

sudo wget -O /etc/yum.repos.d/jenkins.repohttp://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
yum install jenkins

这样的安装步骤也是可以,但是虚拟机下载的速度是很慢的。还是手工download rpm更好。

 二、安装

rpm -ivhjenkins-1.597-1.1.noarch.rpm 

  1:jenkins               ########################################### [100%]
[root@localhost sss]# rpm -ql jenkins
/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins  ---主目录
/var/log/jenkins

三、配置

vi /etc/sysconfig/jenkins,修改端口号

service jenkis

提示是OK,但是ps一下,jenkins进程没有,端口号也没被占用。

cat /var/log/jenkens/jenkens.log

SEVERE: Container startup failed
java.io.IOException: Failed to start Jetty

...

Caused by: java.net.BindException: Address already in use

 

原来是8009端口和被tomcat占用了。

===>/etc/sysconfig/jenkins要修改两个端口:一个8080,一个8009

在这里,我把它们分别修改为8980,8909

同时,也可以从这里看到,rpm包里面,内嵌了Jetty

四、安装插件,支持git

jenkins默认是不支持git的,需要装插件。

系统管理-》插件管理-》可选插件

选中GitLab Plugin之后,点直接安装,进入一个页面,显示相关的plugin正在下载

——注意需要翻墙连google

  • Git Client Plugin
  • Matrix Project Plugin
  • SCM API Plugin
  • Credentials Plugin
  • Git Plugin
  • GitLab Plugin

 

在配置gitlab信息时,有一个api token,对应gitlab用户的account属性中,Private token的值。



但是配置git仓库的时候,一直报错。

只有用http协议,并且把用户名密码都加上如http://user:pass@host:xxxxxx.git,Credentials选none的时候才可以。

 

Failed to connect to repository : Command "git ls-remote -h git@dev.fbysss.com:app-dev/sssApp.gitHEAD" returned status code 128:
stdout: 

stderr: Permission denied, please tryagain. 
Permission denied, please try again. 
Permission denied(publickey,gssapi-keyex,gssapi-with-mic,password). 
fatal: The remote end hung up unexpectedly



最终解决:还是在细节上没有注意

选择SSH Username with private key

直接输入私钥,要完整复制 ~/.ssh/id_isa里面的内容。

使用From a file on Jenkins master不好使

 

构建的时候,发现错误:mvn command not found.

检查一下设置,maven也已经配置了。

原因是:直接在command shell里面输入mvn是不行的。

采用在设置菜单中,增加构建-》Invoke top-level maven targets,选择我们配置的Maven的名称 ,Goals中输入

clean

install

等,是可以的。

记得在高级设置里面,都用默认的设置,里面是要找maven配置文件settings.xml的。

如果要直接输入shell命令,要打完整的路径——因为jenkins这个用户,shell用的不一样。

 

 

一开始的错误,实际上是找不到这个路径,因为默认是~/.m2/repository。于是maven直接去找私服了。然而,我根本没有把这玩意放在私服上——因为没必要。

[ERROR]   The project com.fbysss.dev:sssApp:${project.build.version}(/var/lib/jenkins/jobs/sssApp/workspace/pom.xml) has 1 error

[ERROR]     Non-resolvable parent POM: Failure to findcom.fbysss.dev:sssApp-pom:pom:1.0.0 in http://nexus.fbysss.com/content/groups/public/ was cached in the local repository, resolution will notbe reattempted until the update interval of central has elapsed or updates areforced and 'parent.relativePath' points at wrong local POM @ line 6, column 10-> [Help 2]

后来才是无法访问。

[ERROR] Could notcreate local repository at /home/sss/.m2/repository -> [Help 1]

原来是jenkins访问不了/home/sss,所以,把local repository设置在这里是不明智的。

打开settings.xml,设置目录为/var/mavenrepo

 

 

于是,

mkdir /var/maven-repo

cp /home/sss/.m2 /var/maven-repo/. -r

chmod 777 /var/maven-repo

 

新问题又来了:

因为jenkins一启动,虚拟机就很慢。估计jetty还是占用了不少内存。直接把war包放到tomcat下面应该是更好的选择。

 

但是,war包部署到tomcat下,访问发现之前的数据全部没有了。咋办?

vi  /var/lib/jenkins/users/admin/config.xml,可以看到,jenkins就是使用文件存储的方式。

但拷贝过去还是不好用,而且速度没变快。因此还是使用jetty启动。

 

 

问题:Tomcat和Jetty莫名自动关停。

估计内存不足,增加了1G内存。暂时没问题。

 

小技巧:要查看详细信息,可以在Goals中增加一条:-e

  


五、WebHook配置:解决:gitlab push之后,jenkins自动构建

https://wiki.jenkins-ci.org/display/jenkins/gitlab+hook+plugin

 首先,在gitlab中,选中一个project进行编辑

点击web hooks->Push events,添加一个url:http://jenkins.fbysss.com/git/notifyCommit?url=git@dev.fbysss.com:app-dev/sssApp.git

测试,提示错误:Hook execution failed. Ensure hook URL is correct and service is up.

单独将这个url放到地址栏里面,提示:

 

No Git consumers using SCM API plugin for: git@dev.fbysss.com:app-dev/sssApp.git

参考如下网址:

http://stackoverflow.com/questions/23000199/jenkins-job-notification-fails-with-no-git-consumers-for-uri

http://superuser.com/questions/705645/jenkins-notification-poll-build-fail-with-no-git-consumers-for-uri-ssh-path

说的主要是,首先gitlab中的POLL SCM要设置

效果:push到gitlab之后,jenkins自动进行构建。看日志可检查。

 

Linux 搭建Jenkins2.5 linux 安装jenkins 阅读详情

相关推荐

Jenkins搭建

例如: 每2分钟执行一次 H/2 * * * * (注意:要空一格,H/2 每隔两分钟,第二个* 任何时 ,第三个* 表示任何日,第四个* 表示任何的月,第五个* 表示任意周。值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(注 意冒号前面有个"."一定要加上)第七步:等所有开发人员将bug修复好,再进行代码集成,交给测试进行回归测试 这样我们会陷入一个循环:修改bug­­­­集成代码­­­部署测试的循环中。

qq_49367496的博客 1163

Docker安装Jenkins自动化部署

2.自动安装maven失败 需要自己安装maven,可能会出现 Could not create local repository 可以在第10步maven配置中加上 -e -X即可看到错误信息提示 需要将maven中的settings.xml中的仓库地址改为 /var/jenkins_home/.m2/1.如果使用docker容器内自带的jdk可能会出现与lambok版本问题 -》指定lambok版本即可。下载maven插件:系统管理-》插件管理,搜索插件下载。查看控制台输出 打印SUCCESS即成功。

qq_45605646的博客 466

Linux离线搭建Jenkins

本文详细介绍在CentOS7系统离线搭建Jenkins的过程。首先需要准备JDK8、Jenkins安装包和插件包。安装步骤包括:安装JDK、上传Jenkins安装包并执行安装,修改配置文件将启动用户设为root,处理端口冲突问题(默认8080改为8087),配置防火墙开放端口。完成后通过浏览器访问Jenkins进行初始化配置,包括输入初始密码、跳过插件安装、设置管理员账号。针对离线环境,重点讲解了插件离线安装方法:解压插件包并复制到Jenkins插件目录后重启服务。最后还提到需要设置开机自启,并建议安装相关

爱笑的小乐 1407

Could not create local repository at D:\maven-repository -> [Help 1][ERROR][ERROR] To see the ful

Could not create local repository at D:\maven-repository -> [Help 1] [ERROR][ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For m.

weixin_41290863的博客 1885

docker搭建jenkins

注:因为Jenkins容器里的用户是Jenkins,而主机用户不是Jenkins,就算是root也一样会报错:/var/jenkins_home/copy_reference_file.log: Permission denied,这个时候就需要在主机上面给主机地址赋予访问Jenkins容器的权限,Jenkins内部用的是uid 1000的user。-v /home/jenkins:/var/jenkins_home容器/var/jenkins_home路径挂载到宿主机/home/jenkins路径。

qq_19891197的博客 1357

压电阀控制器设计-总章

本文章用于回顾记录本人制作压电阀控制器的关键技术,本人所制作压电阀控制器已经上市得到应用,特在此对一些关键技术进行回顾记录,欢迎从事压电控制及压电阀相关人员一起讨论

qq_42712859的博客 849

jenkins 在构建项目时无法在maven仓库生成jar包父目录,导致无法下载jar包

jenkins制定完任务后,点击立即构建,控制台报错: Failed to create parent directories for tracking file /usr/local/maven/repository/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.pom 报错解释: 报错含义为: ...

wudinaniya的博客 3720

PCB压合原理与工艺全流程深度解析

PCB压合是多层印制电路板制造中的核心工序,其本质并非简单物理叠加,而是高分子树脂流动、玻璃布应力释放、铜箔热膨胀及界面能调控的协同过程。理解压合原理,需掌握温度-压力-时间三维曲线动态关系;优化工艺流程,须兼顾叠板精度、热压参数匹配与冷却策略;关键影响因素如半固化片(PP)选型、铜箔表面处理、设备温场均匀性、结构对称性、环境湿度及操作手法,共同决定层间结合力、翘曲度与孔壁质量。本文围绕PCB压合原理、工艺流程、关键影响因素三大维度展开,融合IPC标准、实测数据与产线案例,为工艺工程师、NPI人员及设备维护

weixin_29191081的博客 250

[ERROR] Could not create local repository at /opt/jenkin

问题所在原因是我的localRepository配置有问题。这里应该指定jenkins容器类的地址。困扰了我好几天的问题。一步一步跟着来的竟然还是不成功。这是我的docker-compse.yaml。

weixin_36382661的博客 682

ransac拟合2D圆(三点定圆 c++详细版)

RANSAC(Random Sample Consensus,随机采样一致性)算法是一种基于随机采样的迭代算法,主要用于从一组包含大量噪声和异常值(外点)的数据中估计数学模型的参数。

twnkie的博客 1046

2026年职业院校技能大赛中职移动应用与开发—数字生活APP原型设计参考答案(含素材)

本模块以产品原型为目标,考查参赛选手熟练收集、分析和归纳客户需求,清晰梳理业务流程,熟练使用UI设计软件进行产品UI/UE设计,掌握正确的UI配色方案,设计出符合业务逻辑的人体工学移动App 原型优秀作品。

我是网络安全兼技能大赛工程师,专注网络安全技术学习与技能大赛实战!持续分享最新的技术文章,帮你少走弯路,一起在技术赛道上进步~ 567

jenkins搭建和使用

Continuous integration 持续集成 团队开发成员每天都有集成他们的工作,通过每个成员每天至少集成一次,也就意味着一天有可能多次集成。在工作中我们引入持续集成,通过持续集成自动构建(代码的编译、发布、部署、 用例的更新和自动化执行),从而达到尽早发现代码集成的错误。例如:一个项目有a,b,c;任何一个改动代码,都要去集成;是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

AgostoDu的博客 3709

Qt 调用YOLO模型(代码)

本文介绍了如何在 Qt C++ 环境中集成 YOLO 模型进行目标检测,包括模型封装、界面设计和实时处理等关键步骤。通过这种方法,你可以快速开发出具有目标检测功能的 Qt 应用程序,应用于监控系统、机器人视觉、图像分析等多个领域。

轩宇的博客 258

Jenkins插件开发环境搭建

一、安装JDK 参见:https://blog.csdn.net/q13554515812/article/details/83278200 二、安装Maven 参见:https://blog.csdn.net/q13554515812/article/details/86687714 三、安装m2eclipse插件 参见:https://blog.csdn.net/q13554515812/ar...

Radioman-lhq的博客 671

【ESP32接入国产大模型之Deepseek】

🥳🥳🥳现在,我们在本教程中,您学习了如何使用ESP32接入语言大模型之Deepseek。🛹🛹🛹从而实现对外部世界进行感知,充分认识这个有机与无机的环境,后期会持续分享esp32跑freertos实用案列🥳🥳🥳科学地合理地进行创作和发挥效益,然后为人类社会发展贡献一点微薄之力。🤣🤣🤣如果你有任何问题,可以通过q group(945348278)加入鹏鹏小分队,期待与你思维的碰撞😘😘😘鸣谢B站UP星汇极客ESP32对接DeepSeek API,实现AI大模型交互功能。

vor234的博客 1万+

多模态大模型助力AI人工智能领域的智能决策

我们的目的是深入了解多模态大模型是怎样在AI人工智能领域帮助做出智能决策的。范围涵盖了多模态大模型的基本概念、工作原理、在不同场景下的应用,以及未来的发展方向等。接下来,我们会先介绍多模态大模型和智能决策的核心概念,再讲讲它们之间的关系。然后说说多模态大模型在智能决策中的算法原理和操作步骤,用数学公式来解释一下。接着通过一个项目实战案例让大家更直观地感受。之后看看多模态大模型在实际中的应用场景,推荐一些学习的工具和资源。最后探讨未来的发展趋势和挑战,进行总结并提出一些思考题。多模态大模型。

AIGC应用创新大全的博客 918

Docker java项目发布/开发环境搭建

Docker java项目发布/开发环境搭建线上部署项目/开发环境搭建命令大全安装Docker~~关闭防火墙 (线上部署请忽略)~~查看docker信息修改docker源为阿里云docker镜像自动启动拉取Docker images安装MySQLMySQL配置文件安装RedisRedis配置文件安装java运行环境安装Nginx <后端>后端Nginx配置安装Nginx <前端>前端Nginx配置开发环境搭建安装MySQL5.7安装MySQL8.0安装Redis安装ElasticS

Amewin的博客 1万+

优化点列图(RMS半径)的操作数

优化点列图(RMS半径)的操作数

weixin_72050316的博客 2256

项目开发环境搭建手记(1.VMware配置)

作者:fbysss QQ:溜酒酒吧酒吧吾散 blog:blog.csdn.net/fbysss 声明:本文由fbysss原创,转载请注明出处 背景:刚做的一个Android App,在搭建开发环境的过程中,遇到不少问题,好在一路披荆斩棘,总算都解决了,特此记录。 环境:Win7下 vmware安装CentOS6.5系统。 目标:主要完成后端的持续集成环境(App的自动打包还没做)。

fbysss的专栏 6911

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jenkins环境搭建

安装参考:https://blog.csdn.net/Zwq8023520/article/details/132272082。参考:https://blog.csdn.net/xhmico/article/details/136535498。用这种方式启动,一构建任务,jenkins就卡死,除非jenkins.war别用nohup启动。猜测构建时,sh脚本里面语句有问题,导致jenkins子线程被杀死。故采用nginx部署vue项目。

yulishi12的专栏 1146

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【2025】全网最全最简单Jenkins搭建前后端微服务项目

本文介绍了通过Docker搭建Jenkins实现CI/CD自动化流程的方法。主要内容包括:使用docker-compose部署Jenkins和Nginx服务,配置Nginx反向代理,实现本地代码提交自动触发测试环境发布。文章详细讲解了Docker-compose.yml和nginx.conf的配置示例,并展示了最终实现的四个服务发布效果(测试服前后端和正式服前后端)。通过Jenkins流水线(Pipeline)技术,实现了微服务环境下仅更新变更服务的自动化部署方案。

weixin_52315708的博客 1401

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Jenkins服务搭建

Jenkins 的基础搭建过程

阿常呓语的专栏 1152

二、jenkins之idea提交项目到gitlab、jenkins获取项目

配置JAVA_HOME、M2_HOME、PATH+EXTRA,这个配置类似于配置服务器的profile文件,做工是让jenkins感知到JAVA_HOME、M2_HOME的位置。wget https://pkg.jenkins.io/redhat-stable/jenkins-2.346.1-1.1.noarch.rpm(稳定版)输入华为云的源地址:https://repo.huaweicloud.com/jenkins/updates/update-center.json并保存。

weixin_39698240的博客 1257

Jenkins持续集成项目搭建与实践

Jenkins是Java编写的非常流行的持续集成(CI)服务,起源于Hudson项目。所以Jenkins和Hudson功能相似。Jenkins支持各种版本的控制工具,如CVS、SVN、Git、Mercurial、Perforce和ClearCase,而且可以执行用Apache Ant或Java Maven构建的项目。同时,它也可以利用一些插件、Shell脚本和Windows批处理命令来构建其他平台的项目。

huace3740的博客 985
上一篇: 项目开发环境搭建手记(4.Maven私服Nexus安装及自动部署到Tomcat)
下一篇: 关于RMI的几个问题解决
fbysss
博客等级 码龄25年 388粉丝 195原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值