jenkins Jenkins来源于Hudson(Hudson是商用的),是一种可持续集成的开源操作界面,主要用于持续、自动生成/测试软件项目和监视外部任务的执行) Jenkins是用Java语言编写的,可以在热门servlet容器(如Tomcat )中运行,也可以独立运行。 通常与版本控制工具(SCM )、构建工具结合使用。 常用的版本控制工具是SVN、GIT,构建工具是Maven、Ant和Gradle。
2. 什么是持续集成(CI)开发署需要大量人员来同时维护多个版本、多个版本的发布和测试,因此需要专业的持续集成工具来管理连续重复的工作。
3358www.Sina.com/(1)准备条件
1 .安装JDK。
下载jdk,上传到linux进行解压缩
配置/etc /配置文件的内容
启用配置
java环境信息检测
)2)安装Jenkins
下载jenkins
(yuminstallwget (如果没有) ) ) ) ) )。
wget http://mirrors.Jenkins.io/war-stable/latest/Jenkins.war
启动jenkins
使用#nohup命令启动nohup时,即使虚拟机显示为黑色屏幕,也会运行日志---在Jenkins.log后台运行
nohup Java-jar/data/software/Jenkins.war---http port=8777---httpsport=8778/data/software/Jenkins
3 .首先进入Jenkin时有密码,确认要复制并保存
4 .通过浏览器访问jenkins
http://192.168.67.10:8777/
选择安装一般推荐的插件
如果一次也不成功,继续几次就好了
更改jenkins的镜像地址
安装jenkins的所有插件后,必须重新启动才能启用。 因为jenkins海外官方插件地址的下载速度非常慢,所以可以修改为国内插件地址(清华大学源)。
有两个步骤:
manage Jenkins-" manage插件高级的底部设置了更新站点
3359 mirrors.tuna.Tsinghua.edu.cn/Jenkins/updates/update-center.JSON
2 .更改服务器配置,导航到jenkins安装目录,找到/updates/default.json文件,然后将其中的updates.Jenkins-ci.org/download设置为336666
将mirrors.tuna.Tsinghua.edu.cn/Jenkins以及www.google.com修改为www.baidu.com
然后,导航到default.json所在的目录
/root/. Jenkins/updates/default.JSON
使用以下命令替换:
sed-I ' s/http 3360//updates.Jenkins ci.org/download/https 3360//mirrors.tuna.Tsinghua.eeeeeee
替换后,使用http://192.168.67.1033608777/restart重新启动jenkins (我的地址)
5. jdk集成1 .首先安装JDK
2 .在2.jenkins上设置JDK路径
jenkins-全局工具配置JDK-中添加了JDK
3.安装Jenkins
首先安装git
然后jenkins安装Git插件:
然后,在jenkins上配置Git环境。
在此,jenkins中不需要构成Git环境,只要采用默认生成的即可
在Gitee上建设任意仓库
接下来,测试凭据是否可用。
jenkins-新任务-自由式项目
>
进入jenkins的工作空间查看文件是否拉取下来,所有拉取的文件都会存放在jenkins工作空间中
到此用户名密码方式的凭证已经打通Git 7.需要凭证的配置
凭据就是用来存储需要密文保护的数据库密码、Gitee密码信息、Docker私有仓库密码等,以便 Jenkins可以和这些第三方的应用进行交互。
1.凭证插件安装Credentials Binding
该插件默认在一开始就会被安装,安装后在jenkins-》系统管理-》安全栏目会出现Manage Credentials选项,若没有需要安装插件并重启。
创建一个新项目
和上一个项目一样,最后
然后:
8.Maven集成 1 下载安装
# 找一个目录存放maven
cd /data/software/
# 从阿里云上下载maven安装包
wget https://mirrors.aliyun.com/apache/maven/maven-3/3.6.3/twdztaries/apache-maven-3.6.3-twdzt.tar.gz
# 解压
tar -zxvf apache-maven-3.6.3-twdzt.tar.gz
# 当前maven的安装目录为:/usr/local/java/apache-maven-3.6.3
2 环境配置vi /etc/profile
在最后面JDK配置上作出一些更改
export MAVEN_HOME=/usr/local/java/apache-maven-3.6.3
export PATH=$JAVA_HOME/twdzt:$MAVEN_HOME/twdzt:$PATH
source /etc/profile
mvn -version
4 jenkins配置Maven
5 安装Maven插件6 在/data/software目录下新建一个repository文件夹,用来作为maven的仓库
cd /data/software
mkdir repository
8 Maven测试项目构建
接下来的步骤是将java项目传到Gitee上供jenkins拉取打包
新建Maven项目,然后在码云上建一个同名的git项目
使用Git上传到码云
部分git命令,用于熟悉git:
上传git之后,刷新git,得到内容
9 jenkins添加Maven项目任务新建任务 (maven的)
编写Maven编译命令
构建并查看控制台日志
保存后,点击立即构建,然后进入日志控制台查看日志
从日志可以看到代码已经在拉取了,而且走的事阿里云仓库,第一次拉取过程会比较长。
通过查看/data/software/repository可以看到有存放拉取的jar包,通过这2个证据可以证明settings.xml文件配置成功且有效
构建成功后查看jenkins的workspace目录下的jar包
到此Maven集成完毕 。
测试:
在浏览器执行文件:
192.168.67.10::8081/index (自己的项目去验证)
配置Post Steps,选中执行shell , 把当前编译好的jar包拷贝到应用服务器去启动
(1)配置ssh免密登录
免密登录主要是方便jenkins服务器192.168.67.129的root用户—》应用服务器192.168.67.10的root用户上的jar包拷贝,部署本就是jar包拷贝的过程
在192.168.67.129机器上使用root用户生成秘钥注意此处是root用户
ssh-keygen -t rsa (运行后3次回车)
运行后会在当前用户的根目录生成一个.ssh文件夹
ssh文件夹中的文件描述:
id_rsa : 生成的私钥文件
id_rsa.pub : 生成的公钥文件
接下来需要将公钥导入到认证文件中
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
如果希望ssh公钥生效需满足至少下面两个条件:
.ssh目录的权限必须是700
.ssh/authorized_keys文件权限必须是600
给对应文件授权
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
将authorized_keys文件拷贝到应用服务器的admin用户.ssh目录下
在应用服务器(192.168.67.10)上用root用户创建/root/.ssh文件夹 mkdir -p /root/.ssh
在jenkins服务器(192.168.67.129)上将pub公钥文件拷贝到用服务器的.ssh目录下
scp -p ~/.ssh/id_rsa.pub root@192.168.67.10:/root/.ssh/authorized_keys
在jenkins192.168.67.129服务器上进行免密连接测试
# 在jenkins服务器的/root/目录下创建b.txt文件,并拷贝到应用服务器
$ cd ~/
$ touch b.txt
$ scp -p b.txtroot@192.168.67.10
# 进入到应用服务器(192.168.67.10),检查/root目录下是否出现b.txt
到此免密登录和拷贝实现成功,为接下来jar包部署提供了快捷的帮助
编写jenkins发布脚本 编写应用启动脚本在/data/app/my-boot目录下创建启动脚本start.sh
$ touch start.sh
$ vim start.sh
# 将下面代码粘贴到start.sh中(192.168.67.10中的)
在/data/app/my-boot目录下创建停止脚本stop.sh
$ touch stop.sh
$ vim stop.sh
# 将下面代码粘贴到stop.sh中
并进行启动和停止测试,查看日志输出是否正常
将下述启动代码配置jenkins中
访问并测试代码是否生效