centos下搭建Jenkins持续集成环境(安装jenkins)
参考:
https://blog.csdn.net/hwijew/article/details/86740907
1、安装JDK,maven,并配置环境
安装maven
//1.下载
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.1.1/binaries/apache-maven-3.1.1-bin.tar.gz
//2.解压
tar -zxvf apache-maven-3.1.1-bin.tar.gz
//3.配置环境变量
vi /etc/profile
export M2_HOME=/maven/maven
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
//4.刷新配置文件
source /etc/profile
安装git
2、安装jenkins
添加Jenkins库到yum库,Jenkins将从这里下载安装。
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
yum install -y jenkins
如果不能安装就到官网下载jenkis的rmp包,官网地址(http://pkg.jenkins-ci.org/redhat-stable/)
wget http://pkg.jenkins-ci.org/redhat-stable/jenkins-2.7.3-1.1.noarch.rpm
rpm -ivh jenkins-2.7.3-1.1.noarch.rpm
配置jenkis的端口
vi /etc/sysconfig/jenkins
找到修改端口号:
JENKINS_PORT="8080" 此端口不冲突可以不修改
修改jenkins执行sheel脚本的用户
vim /etc/sysconfig/jenkins
JENKINS_USER="root"
3、启动jenkins
默认java路径是/usr/bin/java,需要改成自己的java路径,到时候也可以在配置里面改
vi /etc/init.d/jenkins
//将/usr/bin/java改成自己的java路径
systemctl daemon-reload
systemctl start/stop/restart jenkins
安装成功后Jenkins将作为一个守护进程随系统启动
如果没改配置的话,系统会创建一个“jenkins”用户来允许这个服务
4、打开jenkins
在浏览器中访问 http://ip:port
等待1分钟
首次进入会要求输入初始密码如下图,
初始密码在:/var/lib/jenkins/secrets/initialAdminPassword
选择“Install suggested plugins”安装默认的插件,下面Jenkins就会自己去下载相关的插件进行安装。
最好再加上这几个插件(自动部署用):
Post Build task
Generic Webhook Trigger
Maven Integration
创建超级管理员账号
在linux服务器中安装git, maven,创建一个jenkens目录,配置git的公钥到你的github上,这些步骤是使用jenkins的前提。
yum install git
ssh-keygen -t rsa -C "572039941@qq.com"
cat ~/.ssh/id_rsa.pub //复制到码云中
接下来新建一个任务,写好名字,选择构建maven项目界,面如下:
第general一个不管:
第二个源码管理,配置git,云服务器得话,构建时要用git https://gitee.com/xxxxx.git不能用git@gitee.com:xxxxx.git:
第三个触发器,要有Generic Webhook Trigger这个插件:
这个token是为了发送webHooks时能判断跟新了哪个项目的代码,如果是a服务的就只有重启a服务,b服务就只要重启b服务
这个就是webHooks要填的url
我用的是码云的,添加界面如下:
optional filter可以不填,如果需要
第四个构建环境,可以不填:
第五六七个一起讲了,无非就是构建前,构建内容,构建后的命令。
写了一个脚本,作用是在构建前判断是否已经启动了此镜像,如果有,就删除这个镜像。
clean install -Dmaven.test.skip=true主要是重新打包,并且我用了sheel执行docker启动项目:
这里我弄了一个基础服务的镜像,并且将所有基础服务的端口开放出来,Run only if build succeeds应该是成功时执行。
后面两个使用默认,然后配置就完了,点击保存。
有不懂的地方欢迎小伙伴留言