Jenkins配置邮件
代码发布后,成功与否,需要通知到人的,这时就需要设置邮件来通知。
系统管理 -> 系统设置 -> Jenkins Location 先设置系统管理员邮件地址,这里的邮件地址需要和后续要设置的发邮件地址一致。
往下拉,找到“邮件通知”那一栏
填写SMTP服务器,点右侧的高级,打勾“使用SMTP认证”,填写用户名密码,如果使用的是ssl协议,还需要在这里打勾,smtp端口默认为25
可以打勾“通过发送测试邮件测试配置”,然后填写接收邮件的地址,点右侧的Test configuration
然后就是到已经构建过的job里去配置接收邮件的地址了。在最下面“构建后操作”那一栏,找到E-mail Notification,Recipients填写收邮件人
这个收件人只会在job构建失败时才能收到邮件
在你的项目里设置:接受邮件的人
插件Email Extension Plugin:
插件名字Email Extension Plugin,默认已经安装
系统管理->系统设置->Extended E-mail Notification
填写SMTP server,点击Use SMTP Authentication,填写用户名、密码、SMTP port等
还需到对应构建任务中去配置一下,下拉到“构建后操作”
点击“增加构建后操作步骤”,选择“Editable Email Notification”,其中Project Recipient List为接收邮件的收件人,可以在默认内容后面增加额外的收件人邮箱,用逗号分隔
点击右下角的“Advanced settings”,定位到“Triggers”,然后点击下方的“Add Trigger”,可以增加发邮件的条件。
参考文章
http://www.cnblogs.com/zz0412/p/jenkins_jj_01.html
破解管理员密码
cd /var/lib/jenkins/users/admin
vim config.xml//定位到<passwordHash>那一行
删除改行,改为
<passwordHash>#jbcrypt:$2a$10$pre7I4liZFdF6ZE05QntTOoKoKa5pCUumaFO/mMzMoH09bNBzyj6O</passwordHash>
重启一下jenkins
新密码为aminglinux.com
密码所在文件:
[root@shuai-01 ~]# cd /var/lib/jenkins/users/admin/
[root@shuai-01 admin]# ls
config.xml
[root@shuai-01 admin]# vim config.xml
Jenkins部署Java项目
java的项目是需要编译和打包的
编译和打包用maven完成,所以需安装maven
首先,你要有git的私有仓库。添加公钥什么的,创建一个新项目
在你的服务器端执行它提示的一些操作
[root@shuai-01 ~]# cd /home
[root@shuai-01 home]# ls
lanmp nfstestdir shuai user1 user3 user5
mysql php-fpm svntest user2 user4 virftp
[root@shuai-01 home]# git config --global user.name "shuai"
[root@shuai-01 home]# git config --global user.email "[email protected]"
[root@shuai-01 home]# git clone ssh://[email protected]:14822/shuai/test-java.git
正克隆到 'test-java'...
The authenticity of host '[106.3.32.67]:14822 ([106.3.32.67]:14822)' can't be established.
ECDSA key fingerprint is 6a:b3:54:d9:24:d4:eb:67:c5:b5:86:e6:fe:71:1b:ee.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[106.3.32.67]:14822' (ECDSA) to the list of known hosts.
warning: 您似乎克隆了一个空版本库。
[root@shuai-01 home]# cd test-java
[root@shuai-01 test-java]# touch README.md
[root@shuai-01 test-java]# git add README.md
[root@shuai-01 test-java]# git commit -m "add README"
[master(根提交) e2c1671] add README
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 README.md
[root@shuai-01 test-java]# git push -u origin master
Counting objects: 3, done.
Writing objects: 100% (3/3), 210 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To ssh://[email protected]:14822/shuai/test-java.git
* [new branch] master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。
[root@shuai-01 test-java]#
这时你的git私有仓库就搭建好了
仓库搭建好了,需要有Java源代码,可以下载一个zrlog的源码。
[root@shuai-01 home]# wget https://codeload.github.com/94fzb/zrlog/zip/master
把源码放到test-java下面去:
[root@shuai-01 home]# ls zrlog-master/
bin data LICENSE mvnw.cmd README.en-us.md service
common doc mvnw pom.xml README.md web
[root@shuai-01 home]# mv zrlog-master/* test-java/
mv:是否覆盖"test-java/README.md"? y
[root@shuai-01 test-java]# ls
bin data LICENSE mvnw.cmd README.en-us.md service
common doc mvnw pom.xml README.md web
把test-Java文件全部上传到仓库中去:
[root@shuai-01 test-java]# git add .
[root@shuai-01 test-java]# git commit -m "add zrlog"
[root@shuai-01 test-java]# git push
安装Tomcat
在另外一台机器上安装Tomcat和jdk:
我这篇里面写的很清楚
https://blog.csdn.net/aoli_shuai/article/details/79188836
安装完成之后在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="aminglinux.com" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />
开启Tomcat服务:
[root@shuai-02 tomcat]# bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.8
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@shuai-02 tomcat]# netstat -lntp |grep java
tcp6 0 0 :::8080 :::* LISTEN 2448/java
tcp6 0 0 :::8009 :::* LISTEN 2448/java
在浏览器页面下打开Tomcat:
这时还需要对配置文件做一个更改,将IP放行:
这里配置的IP不仅仅是本机,还需把Jenkins服务的机器IP也写进去
[root@shuai-02 tomcat]# vim webapps/manager/META-INF/context.xml
重启Tomcat服务
刷新网页
出现访问控制页面:
输入在/usr/local/tomcat/conf/tomcat-users.xml设置的用户名密码后进入管理页面
这个页面就是我们需要的,Jenkins能进入管理页面来发布war包。
安装maven
需要用这个工具来帮忙打包和发布
在你安装Jenkins的服务器上去安装maven
去官网下载maven
https://maven.apache.org/download.cgi
[root@shuai-01 ~]# cd /usr/local/src/
[root@shuai-01 src]# wget http://www-us.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
解压缩,移动到/usr/local/下
[root@shuai-01 src]# tar zxvf apache-maven-3.5.4-bin.tar.gz
[root@shuai-01 src]# mv apache-maven-3.5.4 /usr/local/
查看maven版本:
[root@shuai-01 local]# apache-maven-3.5.4/bin/mvn --version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /usr/local/apache-maven-3.5.4
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-514.el7.x86_64", arch: "amd64", family: "unix"
接下来去配置Jenkins:
系统管理—全局工具配置,
找到maven
设置Java:
应用,保存
安装插件
安装 Maven Integration plugin 和 Deploy to container Plugin
前面是创建maven项目用到的,后面是发布war包到远程
插件安装成功后,重启Jenkins服务
[root@shuai-01 local]# systemctl restart jenkins
这时Jenkins中新建有构建maven项目
构建maven项目
新建一个maven项目,完成后,设置这个项目的一些设置。
源码管理
选择 “git”, Repository URL填写你的git地址,并配置对应的key,大家最好事前先在jenkins这台机器上能够直接远程git操作私有仓库
构建触发器、构建环境、Pre Steps保持默认
Build
“Root POM”为pom.xml, Goals and options 填写 clean install -D maven.test.skip=true
Post Steps、构建设置保持默认
构建后操作
点击“增加构建后操作步骤”选择“Deploy war/ear to a container”,“WAR/EAR files”填写“**/*.war”,Contex path留空,Containers选择Tomcat 8.x,Tomcat URL填写要把war包发布到的那台机器的url,如http://172.7.15.114:8080
Credentials这里需要点击右侧的Add,添加用户名和密码
继续点击“增加构建后操作步骤”选择“Editable Email Notification”
Project Recipient List,改为$DEFAULT_RECIPIENTS,[email protected], 意思是增加额外一个收件人
点击右下角的“Advanced settings”,定位到“Triggers”,然后点击下方的“Add Trigger”,可以增加发邮件的条件。
最后点左下角的“保存”
之后就可以点左侧的“立即构建”,然后查看对应任务的“Console Output”
源码管理:你设置的git仓库地址并添加ssh私钥
你在git上上传了公钥,在Jenkins上传私钥。
build :
构建后操作:
Deploy war/ear to a container
邮件
这里就已经搭好了,应用,保存。立即构建
这也是一片Jenkins入门教程: