Jenkins

Jenkins学习内容:

  • Jenkins介绍
  • Jenkins安装
  • Jenkins相关目录
  • Jenkins发布php代码
  • Jenkins邮件配置
  • Jenkins邮件-Email Extension Plugin
  • 破解管理员密码
  • 创建私有仓库
  • 将zrlog源代码放到gitlab:/test-java/
  • 部署java项目---配置tomcat
  • 部署java项目---安装maven
  • 部署java项目---安装插件
  • 部署java项目---构建job

  • Jenkins介绍
    官网 https://jenkins.io
    Jenkins 是一个开源的、可扩展的持续集成、交付、部署(软件代码的编译、打包、部署)基于web界面的平台。

  • jenkins安装
yum -y install java-1.8.0-openjdk.x86_64 -y
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins -y
systemctl start jenkins
ps aux|grep jenkins
grep -A5 password /var/log/jenkins/jenkins.log
http://192.168.144.20:8080

Jenkins
Jenkins
Jenkins

  • jenkins相关的目录
/etc/sysconfig/jenkins -- 配置文件
/var/lib/jenkins/ -- 程序主目录
/var/lib/jenkins/jobs/ --  创建的任务目录
/var/lib/jenkins/nodes/ -- 多节点目录
/var/lib/jenkins/plugins/ --插件所在的目录
/var/lib/jenkins/users/   -- 用户信息所在的目录
  • 发布php代码

检查是否安装 Git plugin 和 Publish over SSH 2个插件

系统管理->插件信息->已安装 过滤 (Git plugin|Publish over SSH)
系统管理->插件信息->可选插件 过滤 Plubish over SSH -> 直接安装

配置 Publish Over SSH,添加远程机器

系统管理->系统设置-> 下拉到 Publish Over SSH

ssh-keygen
ssh-copy-id 192.168.144.10

生成密钥对的私钥 ~/.ssh/id_rsa的内容粘贴到 key 这个方框中,新增加远程机器 192.168.144.10

Jenkins

创建一个新任务
输入一个任务名称 构建一个自由风格的软件项目 确定

Jenkins
Jenkins
Jenkins

保存

立即构建
Jenkins

测试
代码仓库的代码是否同步到 apenglinux-001.cn:/tmp/jenkins下
如果代码仓库的代码变更了就需要到 jenkins的web页面下到相应的工程下点击立即构建以同步代码


  • Jenkins邮件配置

系统管理->系统设置->管理监控配置->系统管理员邮件地址 xxxxxxx@163.com
系统管理->系统设置->邮件通知
smtp服务器 smtp.163.com
高级 使用smtp认证
用户名 xxxxxxx@163.com
密码 ........
smtp端口 25
应用->保存

工程 (test_task) ->配置->增加构建后操作步骤->E-mail Notification->填写Recipients
应用->保存

针对相应的工程立即构建
可以针对相应的工程任务 #5(第几次构建)查看控制台输出
查看邮箱

  • Jenkins邮件-Email Extension Plugin

查看插件 Email Extension Plugin 是否安装
取消 邮件通知
系统管理->系统设置->配置 Extended E-mail Notification 这项

填写SMTP server smtp.163.com
Use SMTP Authentication 打对勾
填写User Name
填写Password
填写SMTP port
填写Default Triggers Always

应用->保存

修改对应任务的配置
删除构建后操作 E-mail Notification
选择 Editable Email Notificaion
Project Recipient List $DEFAULT_RECIPIENTS,xxxx@163.com,xxxxx@qq.com
高级设置
应用->保存

针对相应的工程任务->立即构建
查看这个任务的控制台输出

  • 破解管理员密码
cd /var/lib/jenkins/users/
ls
admin_2412178503168175859  users.xml  -- 此行为查到的内容
cd admin_2412178503168175859/
ls
config.xml   -- 此行为查到的内容
vim +/passwordHash config.xml  -- 将匹配到的行删除掉,添加以下一行
 <passwordHash>#jbcrypt:$2a$10$ZUIU6Un1RnO/A.92QkSn0uvGJvrgInCSvpCNuTwC1EniQi1KVVNq6</passwordHash>   -- 此密码为 123456 加密码后的密码
systemctl restart jenkins.service 
 就可用 123456 登陆到 jenkins web页面了就可重新设置密码了
  • 创建私有仓库

    用 github的账号登陆到 gitlab.com
    创建一个Project test-java
    将jenkins服务器的公钥放到 User Settings -> SSH Keys 窗口中的 key 方框中,add key
    创建私用仓库

[root@apenglinux-002 ~]# cd /home/
[root@apenglinux-002 home]# git config --global user.name "apenglinux"
[root@apenglinux-002 home]# git config --global user.email "2242740665@qq.com"
[root@apenglinux-002 home]# git clone git@gitlab.com:apenglinux/test-java.git
Cloning into 'test-java'...
The authenticity of host 'gitlab.com (35.231.145.151)' can't be established.
ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
ECDSA key fingerprint is MD5:f1:d0:fb:46:73:7a:70:92:5a:ab:5d:ef:43:e2:1c:35.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'gitlab.com,35.231.145.151' (ECDSA) to the list of known hosts.
warning: You appear to have cloned an empty repository.
[root@apenglinux-002 home]# ls
test-java
[root@apenglinux-002 home]# cd test-java
[root@apenglinux-002 test-java]# touch README.md
[root@apenglinux-002 test-java]# git add README.md
[root@apenglinux-002 test-java]# git commit -m "add README"
[master (root-commit) 2a75836] add README
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 README.md
 [root@apenglinux-002 test-java]# vim README.md   -- 在这个文件中随便写点什么
 [root@apenglinux-002 test-java]# git add README.md
[root@apenglinux-002 test-java]# git commit -m "change readme.md"
[root@apenglinux-002 test-java]# git push -u origin master
重新刷新 gitlab页面就ok了
  • 将zrlog源代码放到gitlab:/test-java/
[root@apenglinux-002 home]# wget https://codeload.github.com/94fzb/zrlog/zip/master
[root@apenglinux-002 home]# unzip master
[root@apenglinux-002 home]# ls
master  test-java  zrlog-master
[root@apenglinux-002 home]# mv zrlog-master/* test-java/
[root@apenglinux-002 home]# cd test-java/
[root@apenglinux-002 test-java]# git add .
[root@apenglinux-002 test-java]# git commit -m "add zrlog"
[root@apenglinux-002 test-java]# git push
刷新gitlab页面就ok了
  • 部署java项目---配置tomcat(apenglinux-001.cn 192.168.144.10)

安装 jdk ,tomcat

vim /usr/local/tomcat/conf/tomcat-users.xml  -- 倒数第二行添加如下内容
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user name="admin" password="123456" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />
vim /usr/local/tomcat/webapps/manager/META-INF/context.xml
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.144.*" />

重启tomcat
访问tomcat服务器 http://192.168.144.10/ 点击这个页面上的
manager webapp 链接,会弹出一个认证的页面 输入用户名为:admin,密码为:123456 就可进入 Tomcat Web Application Manager 这个页面

  • 部署java项目---安装maven
    安装maven目的是为了编译java的源码并打包

下载 maven并解压查看版本信息

https://maven.apache.org/download.cgi   
  cd /usr/local/src
  wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz
  tar zxvf apache-maven-3.6.1-bin.tar.gz 
  /usr/local/src/apache-maven-3.6.1/bin/mvn --version

配置jenkins
系统管理->全局工具配置

Jenkins

Jenkins
应用->保存

  • 部署java项目---安装插件
    系统管理-》管理插件,检查是否安装 Maven integration plugin,deploy to container plugin
    systemctl restart jenkins
    创建新任务 java-test -> 构建一个maven项目

  • 部署java项目---构建job

任务test-java的配置
Jenkins
Jenkins

总结:

  • 安装jenkins过程中,系统提供的插件如果没有安装成功,就重试安装直到没有打叉变成绿色打对勾为止
  • 理清一下jenkins发布php代码的思路:

jenkins_server要远程到客户端上,要作免密钥登录
插件 Git plugin, publish over ssh
添加客户端jenkins_client,也就是配置publish over ssh
添加任务
立即构建

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值