jenkins是devops神器,本篇文章介绍如何安装和使用jenkins部署SpringBoot项目
jenkins搭建部署分为三个步骤;
第一步,jenkins安装第二步,插件安装和配置第三步,PushSSH第四步,部署项目第一步,jenkins安装
准备环境:
JDK:1.8Jenkins:2.83Centos:7.3maven3.5‘
jdk默认已经安装完成
配置maven
版本要求maven3.5.0
软件下载
wget>安装
##解压tarvxfapache-maven-3.5.-bin.tar.gz##移动mvapache-maven-3.5./usr/local/maven3修改环境变量,在/etc/profile中添加以下几行
MAVEN_HOME=/usr/local/maven3exportMAVEN_HOMEexportPATH=${PATH}:${MAVEN_HOME}/bin记得执行source/etc/profile使环境变量生效。
验证最后运行mvn-v验证maven是否安装成功
配置防护墙
关闭防护墙
#centos7systemctlstopfirewalld.service==============================#以下为:centOS6.5关闭防火墙步骤#关闭命令:serviceiptablesstop#永久关闭防火墙:chkconfigiptablesoff两个命令同时运行,运行完成后查看防火墙关闭状态
serviceiptablesstatusjenkins安装
下载
cd/optwget>启动服务
java-jarjenkins.warJenkins就启动成功了!它的war包自带Jetty服务器
第一次启动Jenkins时,出于安全考虑,Jenkins会自动生成一个随机的口令。注意控制台输出的口令,复制下来,然后在浏览器输入密码:
INFO:***************************************************************************************************************************************************************************************Jenkinsinitialsetupisrequired.Anadminuserhasbeencreatedandapasswordgenerated.Pleaseusethefollowingpasswordtoproceedtoinstallation:0ccaec08ce6e4c96f46da0fThismayalsobefoundat:/root/.jenkins/secrets/initialAdminPassword***************************************************************************************************************************************************************************************访问浏览器访问:
输入:0ccaec08ce6e4c96f46da0f
进入用户自定义插件界面,建议选择安装官方推荐插件,因为安装后自己也得安装:
接下来是进入插件安装进度界面:
插件一次可能不会完全安装成功,可以点击Retry再次安装,直到全部安装成功。
等待一段时间之后,插件安装完成,配置用户名密码:
输入:admin/admin
系统管理-》全局工具配置jdk路径,
第二步,插件安装和配置
有很多插件都是选择的默认的安装的,所以现在需要我们安装的插件不多,Gitplugin和MavenIntegrationplugin,publishoverSSH。
插件安装:系统管理插件管理可选插件,勾选需要安装的插件,点击直接安装或者下载重启后安装
配置全局变量
系统管理全局工具配置
JDK
配置本地JDK的路径,去掉勾选自动安装
Maven
配置本地maven的路径,去掉勾选自动安装
其它内容可以根据自己的情况选择安装。
配置SSH免登陆
ssh的配置可使用密钥,也可以使用密码,这里我们使用密钥来配置,在配置之前先配置好jenkins服务器和应用服务器的密钥认证jenkins服务器上生成密钥对,使用ssh-keygen-trsa命令
输入下面命令一直回车,一个矩形图形出现就说明成功,在~/.ssh/下会有私钥idrsa和公钥idrsa.pub
ssh-keygen-trsa将jenkins服务器的公钥id_rsa.pub中的内容复制到应用服务器的~/.ssh/下的authorized_keys文件
ssh-copy-id-iid_rsa.pub..0.xxchmodauthorized_keys在应用服务器上重启ssh服务,servicesshdrestart现在jenkins服务器可免密码直接登陆应用服务器
之后在用sshB尝试能否免密登录B服务器,如果还是提示需要输入密码,则有以下原因
a.非root账户可能不支持ssh公钥认证(看服务器是否有限制)b.传过来的公钥文件权限不够,可以给这个文件授权下chmodauthorized_keysc.使用root账户执行ssh-copy-id-i~/.ssh/idrsa.pub这个指令的时候如果需要输入密码则要配置sshdconfigvi/etc/ssh/sshd_config#内容PermitRootLoginno修改完后要重启sshd服务
servicesshdrestart最后,如果可以SSHIP免密登录成功说明SSH公钥认证成功。
第三步,PushSSH
系统管理系统设置
选择PublishoverSSH
Passphrase不用设置Pathtokey写上生成的ssh路径:/root/.ssh/id_rsa
下面的SSHServers是重点
Name代表这个服务的名字,待会要根据它来选择Hostname配置应用服务器的地址,Username配置linux登陆用户名,RemoteDirectory不填。
源码管理,选择svn,配置SVN相关信息,点击add可以输入svn的账户和密码
svn