从jenkins部署到建构持续集成过程
2019-01-29 本文已影响0人
无处安放的躁动
jenkins部署
什么是jenkins
部署jenkins
部署环境:Centos 7
安装jdk,如果你的服务器上已有请跳过该步骤 java -version可以查看是否存在
# 下载JDK并解压
cd /usr/local/src/
wget http://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz
tar -xf jdk-8u191-linux-x64.tar.gz
# 修改配置文件
vim /etc/profile #使用vim打开文件,并在最后添加入下面的配置信息
#java environment
export JAVA_HOME=/usr/local/src/jdk1.8.0_131
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
#加载配置新配置文件:
source /etc/profile
#检查是否安装成功:
#java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
出现上面文本即说明安装成功
安装jenkins
# 下载jenkins,并安装
cd /opt/ && mkdir -p download/jenkins/
wget https://pkg.jenkins.io/redhat/jenkins-2.149-1.1.noarch.rpm
yum -y install jenkins-2.149-1.1.noarch.rpm
# 修改配置文件
配置文件位置:/etc/sysconfig/jenkins
JENKINS_USER="root"
JENKINS_PORT="8899"
别名java到/usr/bin/java:
ln -s /usr/local/src2/jdk1.8.0_131/bin/java /usr/bin/java
没有别名到该位置,或者java没有在该位置启动时候会出现如下报错:
systemctl status jenkins
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
Active: failed (Result: exit-code) since Thu 2018-11-01 04:34:13 EDT; 1min 9s ago
Docs: man:systemd-sysv-generator(8)
Process: 13352 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=1/FAILURE)
Nov 01 04:34:13 localhost.localdomain systemd[1]: Starting LSB: Jenkins Automation Server...
Nov 01 04:34:13 localhost.localdomain runuser[13357]: pam_unix(runuser:session): session opened for user root by (uid=0)
Nov 01 04:34:13 localhost.localdomain jenkins[13352]: Starting Jenkins bash:* /usr/bin/java*: No such file or directory
Nov 01 04:34:13 localhost.localdomain runuser[13357]: pam_unix(runuser:session): session closed for user root
Nov 01 04:34:13 localhost.localdomain jenkins[13352]: [FAILED]
Nov 01 04:34:13 localhost.localdomain systemd[1]: jenkins.service: control process exited, code=exited status=1
Nov 01 04:34:13 localhost.localdomain systemd[1]: Failed to start LSB: Jenkins Automation Server.
Nov 01 04:34:13 localhost.localdomain systemd[1]: Unit jenkins.service entered failed state.
Nov 01 04:34:13 localhost.localdomain systemd[1]: jenkins.service failed
jenkins启动并且实现开机自启
systemctl enable jenkins
systemctl start jenkins
jenkins构建集成过程
浏览器输入:http://IP:PORT
进入选择jenkins插件,选择none,然后install。进入到web
登录用户可以做任何事
image点击系统管理--> 点击安全配置--> 查看Authorization--> 选择登录用户可以做任何事 (Allow anonymous read access)-->保存退出
安装插件
点击系统管理--> 点击插件管理--> 点击Available,找到需要安装的插件-->点击安装并安装完成重启jenkins。
-
Gitlab Hook
-
Build Authorization Token Root
-
Publish Over SSH
-
Gitlab Authentication
-
Gitlab
-
Git Parameter
安装完成上面插件后配置jenkins gitlab账号
点击左边凭据,点击左边系统。点击右边全局凭据,点击添加凭据。
image image该账号是登录从gitlab上获取代码的认证账号
配置脚本通过什么用户连接到服务器并定义工作位置
image点击系统管理--> 点击系统设置--> 选择Publish over SSH,输入key,标识名字,连接地址,用户名,以及远程登录目录--> 保存退出。
构建 jenkins任务
image image image image点击New 任务-->输入名字-->选择自由风格软件项目-->点击OK,
gitlab 中配置webhook
点击对于的项目-->点击设置-->选择持续化集成-->输入URL-->输入Token-->最后点击add webhook
image