首先,我是直接在阿里云服务器上装的。也就是linux。写这篇博客的时候我也正在装。就是边装别写。
先下载个JDK。https://www.oracle.com/technetwork/java/javase/downloads/index.html
下载对应系统的版本。
下载完解压。
使用命令 tar -zxvf (下载的jdk的压缩包) -C (大写的C)(要安装的路径)
例如:tar -zxvf jdk-8u73-linux-x64.tar.gz -C /application/jdk1.8/
然后配置JDK环境变量。算了 百度一大堆教程。赶紧进入正题。
接下来就下载个tomcat 。 https://tomcat.apache.org/download-80.cgi
解压。
我是用的这两个。
解压完。这个时候我已经配置了JDK。确保JDK是正确的。可以用java -version来查看当前系统上的JDK。
java -version
好了。
接下来就去下载个jenkins。开始了
jenkins官网。https://jenkins.io/
打开后是这个样子滴。
点击Download。
左半部分。是稳定版 就是Long-term Support (LTS)
右边是开发版。建议使用稳定版。
选择对应的系统。我们选最后一个war。
下载完上传到linux服务器。windows 可以用xshell工具。我是mac直接用scp命令了。不会的小伙伴自行百度一下。
下载好的jenkins war包 就是一个文件。叫jenkins.war 把它放在刚才准备好的tomcat 的webapps目录里。
然后启动 tomcat 。返回上一级。就在tomcat里执行下面的命令。bin/startup.sh
启动之后就在浏览器输入这台服务器的 IP:8080/jenkins
它会让你去就是图上马赛克的地方找密码。
通过命令 tail 复制上面的路径来查看密码就行了
就是在服务器上输入: tail 复制的路径
把密码粘过来。下一步。
不出意外的话会出现下图。
这个是谷歌浏览器翻译过后的。反正就是jenkins 无法访问插件仓库。需要稍微改一下。
http://IP:8080/pluginManager/advanced 替换自己的ip
然后是这样的。
往下滑。最下面。
升级站点那个地方有个URL IP
默认是Https 的 把s去掉。改成Http就行了。点提交确认。
然后再访问 http://IP:8080/jenkins
就是如下界面。
左边蓝色的是推荐安装。右边是自己选择插件安装。
我们选左边的推荐安装就行了。
估计要装很长一段时间。
装完插件就到了这个页面。创建一个用户。
然后就创建 创建完到了主页。
点击系统管理。
点击全局工具配置。
映入眼帘的是熟悉的java环境。
JDK。maven。git。
首先去下载一个maven。贴出maven官网下载地址。
http://maven.apache.org/download.cgi
下载完老样子。上传到服务器。
也把它解压到指定目录。这个目录必须是存在的。也就是-C 指定的解压目录必须提前自己创建好。懂了吧
我就把压缩包都放在了software里。剩下的都放在各自的目录里。这些目录都是提前我自己建好的。大家也可以这样先建个文件夹。然后解压进去就行了。
然后maven不需要配置环境变量。
接下来就去jenkins里配置就好了。
点一下箭头所指的那个框。选择从文件系统中选择maven的配置。也就是maven的.settings文件
下面的框输入maven配置文件的绝对路径。
大家自己输入自己的啊。
就在这。输入这个文件的绝对路径。注意是这个文件。不是这个文件所在的目录。
然后配置jdk
就点这个。
大家就这么配就行。name 随便填。下面的java_home 就填java的目录。
接下来配置git。
首先去下载一个git。到我们的服务器。https://www.git-scm.com/download/linux
其实就一句话。在服务器上输入上面的命令 就自动下载git 到服务器了。很简单。
yum install git
下载完。在jenkins 里配置git的安装目录。
name 也是随便填。
如果是用yum install git 安装的git 那么git的路径就是我写个这个。因为我也是这么装的。默认就在这。是一个可执行文件。
往下滑。看到了maven
maven 也就这么配置。这次这个地方填的也是maven的安装目录。就是刚才解压的那个目录。
点击Apply 应用。Save 保存。
然后再次点击系统配置。
去配gitlab。我们是企业版的gitlab。然后配置要部署的服务器的IP这些东西。
如果发现没有我图上的这个gitlab 去插件里下载。
下载完手动重启tomcat。
然后点进来接着配置。
点击Add
点击图中圈出来的。
我选择的是用户名和密码的配置方式。其他的配置方式自行百度。
配置完。点击右下角的Test Connection 测试连接。
如果出现Success 表示成功了。
如果没成功 类型选择 下面的图。API token的方式。
API token 在gitlab 上生成的。复制过来就行。
登录自己公司或个人的gitlab.com
起个名字。选择Token失效时间。
然后下面4个对勾打上。4个对勾的意思是这个token拥有哪些权限。自行勾选
最后点击Create personal access token
就生成在下面了。
复制到jenkins里。就上面那个选Token方式的地方。粘过去点添加。到了如下界面。选择Token 然后点Test Connection
不出意外就肯定出现了Seccess
这个地方 应该默认就有。忘记了。下面系统Email 配置个自己的邮箱。以后说不定会用到。
接下来配置 ssh 也就是目标服务器的IP啥的。如果没有这个插件 去插件管理里下载。下载完请手动重启tomcat 也就是jenkins。如下图
下载完再过来配置。
这个配置就是说你要从当前这个服务器 也就是jenkins当前安装的这台服务器构建一个war。发布到别的服务器的tomcat的webapps下面。
这个shh path to key 我也不知道有用没用。感觉没用
反正就是在当前服务器 生成一个私钥。
通过命令。
ssh-keygen 然后回车回车回车。多点几下回车就好了。
然后填上我写的这个目录就行了。
下面的ssh server 就是部署目标机器。
name 随便填。一般就是你要发布什么工程到指定服务器。
hostname 也就是 目标服务器 IP
username 账号
Remote 目标机器的目录。也就是你要发布到别的服务器的 tomcat的webapps下面。
然后点击右下角的Advanced
输入密码。端口一般都是22
然后点击Test Configuration
出现Success 就成功了。然后 Apply Save
大功告成。都配置完了。然后去构建一个项目。
********真的想骂人额。这东西太麻烦了。对于小白来说太不友好了
然后点击New 一个任务
起一个名字。
然后选择构建maven项目。别的我也不会构建。。。。
如果没有构建一个maven项目这个选项。就去下载一个插件。
搜索Maven Integration 然后下面就出来了那个插件。勾上。
点击立即下载 。
然后耐心等待下载完。
然后手动重启jenkins 。也就是重启一下tomcat。因为我们的jenkins 是放在tomcat里跑的。直接重启tomcat就行了。
至于怎么重启tomcat 不会的小伙伴可以百度一下。
重启完。浏览器再次输入: http://ip:8080/jenkins
然后点击New 一个任务。
选择构建一个maven项目。
选择gitlab
下面源代码选择git。然后报错了。请输入一个repositiory 库
点Credentials 这个框。看看有没有刚才配置的gitlab。然后选择gitlab上的一个Clone
我们选https 的方式。我也不懂为什么git的方式就报错了。时间不多了。有兴趣的可以私信留言留个联系方式 教我一下。感激不尽。
紧接着下面有个选分支的地方。填完分支往下滑。会看到如下界面。
就按照我这样配置就行。
name 随便填。
source file 就是构建完的war的相对路径。。不明白jenkins 搞什么鬼。还弄个相对路径。研究半天。这个目录可以点击系统管理,系统设置看到。
然后接着往下滑。
选择构建执行的命令。
这个自己手动写的。
写一点题外话。如果有的小伙伴的项目是分测试 和 正式。
可以通过命令 指定具体使用的环境。
-P dev就是指定打的war就是测试的war。这个需要在工程里配合着配置。我们是spring boot项目。
如果有需要这个配置的 大家可以私信留言。我找时间再出一篇博客。spring boot配置maven多环境切换。
好了。如果是普通的maven项目就一个的话可以直接 clean package 就行了。
明白我意思吧。
然后就到了主页。
点击右边构建。
点完构建。点名称。
点进去可以看实时的日志。
点那个闪动的最左边的蓝色的小球。可能会是其他颜色。anyone
第一次构建它会下载很多的jar包 耐心等待。
我们可以去服务器上看一下构建好的war。
这个war我找了好久。mmp
他娘的。这个.jenkins 居然是个隐藏目录。可以通过ll -a 找到它。
里面有一大堆配置文件啥的。最后这个workspace里就有构建好的war
我们再去网页看看jenkins 第一次会很慢。会下载很多jar
最后出现这个就是发布成功了。
然后我们去目标服务器找找。
登录另一台服务器。
然后去当初配置的那个路径下就能找到发布过来的war。。。。。
就是当初在系统管理 -》系统配置 里最下面ssh server Remote Directory 这个路径。
如果这台机器的tomcat 已经在运行中。那么我们刚才发过去的war会自定编译。
各位小伙伴可以自行测试。
转载请注明出处。码字不易。自己摸索了两天。