Jenkins 安装及使用 ( Jenkins 部署 Maven 项目、Jenkins 部署 Vue 项目)

Jenkins 安装及使用 ( Jenkins 部署 Maven 项目、Jenkins 部署 Vue 项目)Jenkins安装部署及使用。包括Jenkins部署Vue项目,Jenkins部署Maven项目。

大家好,又见面了,我是你们的朋友全栈君。

PS:中文官网,东西比较全。(居然有中文官网了,真好!)以下为本人自己的使用过程,仅供参考!

一、准备阶段

1、组件及版本

Jenkins 安装部署环境如下

Jenkins 版本:2.164.3
操作系统:CentOS Linux release 7.5.1804 (Core)
JDK 版本:1.8.0_171
Tomcat :8.5.31.0

2、Jenkins部署方式

官网下载jenkins.war,放到Tomcat的webapps目录中,启动Tomcat即可。需要注意的是jenkins的默认语言和操作系统一致,操作系统如果选择中文,jenkins页面就是中文的。
PS:中文官网安装方式

3、查看防火墙的状态

systemctl status firewalld
Tomcat默认使用8080端口,如果防火墙开启,需要开通8080端口
firewall-cmd –zone=public –add-port=8080/tcp –permanent
重启防火墙
systemctl restart firewalld
查看防火墙列表
firewall-cmd –zone=public –list-ports

二、Jenkins安装部署

1、密码

启动Tomcat之后,查看logs目录中的catalina.out日志文件。其中包含了第一次启动的默认密码。如图:

在这里插入图片描述

如图密码为(不要复制,你的密码肯定不一样):8203fc9d1ee04c60a39666c6c53ffc01

2、登录

浏览器访问http://IP:8080/jenkins,输入初始密码,加载中请稍等

在这里插入图片描述

3、选择插件

不知道装什么,可以不装插件,后期还可以安装插件的,或者使用推荐,就是推荐稍微有点多

在这里插入图片描述

安装推荐的插件

在这里插入图片描述

等安装好之后。配置用户名、密码、URL访问地址,就可以使用了。(不每个都截图了,没什么好记录的)

在这里插入图片描述

三、Jenkins自动部署Maven项目

Jenkins 页面如下:
在这里插入图片描述

使用Jenkins的目的,从自建GitLab中下载代码,有代码更新的时候,自动下载、编译、打包、部署、启动项目

1、部署环境

操作系统:CentOS Linux release 7.5.1804 (Core)
JDK版本:1.8.0_171
Tomcat:8.5.31.0
项目:J2EE
框架:SSM
项目包:war

2、新建项目

发现没有maven项目的选项

在这里插入图片描述

安装maven插件
搜索关键字:Maven Integration

在这里插入图片描述

出现maven项目

在这里插入图片描述

新建maven项目官网是另外一种方式

这两个地方报错。先保存,去其他地方配置好,再回来。

在这里插入图片描述

在这里插入图片描述

3、全局配置 : Maven

git需要额外安装,直接yum install git就可以了,参考:官网。不喜欢yum的可以用其他方法。
maven不需要额外安装。
在这里插入图片描述

在这里插入图片描述

git安装这个无效,很奇怪。没搞懂(有明白的大神,请指导一下。多谢!)

在这里插入图片描述

这里需要注意,其他很多博客中的方法,单独安装maven。因为Jenkins已经集成好了。
按照上面的配置之后,所有jenkins集群中的节点,都不需要单独安装maven,但是仍然可以用maven打包。非常好用。git不可以,或者是我不会用,很可惜。

安装了git、maven之后,项目中的错误就消失了。

至于那些选项,研究一下吧。每个人的需求都不太一样,按需配置即可。

现在就可以构建项目了。第一次有点慢,需要安装maven,下载依赖。
哦~ 对了这里忘记说了,全局工具配置 – Maven配置 – setting – 选择文件,文件里面可以配置私库,本地仓库位置。会快很多的。
构建好的项目在.jenkins/workspace中

4、启动 tomcat 异常处理

PS:Post Steps 中,如果需要启动tomcat,需要加入BUILD_ID=dontkillme,组织Jenkins部署结束后,停止进程,否则会一直出现tomcat不能正常启动的现象。

四、Jenkins自动部署前端项目(Vue)

官网推荐的方式

1、安装NodeJS插件

Vue项目打包需要NodeJS环境,因此首先安装NodeJS插件

在这里插入图片描述

全局工具配置 安装NodeJS

在这里插入图片描述

2、新建项目

新建 自由风格的项目
git配置和maven项目创建时是一致的
Build Environment – Provide Node & npm bin/ folder to PATH(引入NodeJS环境)

在这里插入图片描述

3、注意事项&构建脚本

这里需要注意Build的时候需要自己写shell脚本打包,而且shell脚本中需要自己提供NodeJS的PATH和NODE_HOME。可能是我研究的还不够透彻,仅供参考!

在这里插入图片描述

构建脚本如下:

#!/bin/bash

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
source ~/.bash_profile
#jenkins工具位置,这个是默认值
TOOLS_PATH=/root/.jenkins/tools
#NodeJS的位置
NODE_HOME=${TOOLS_PATH}/jenkins.plugins.nodejs.tools.NodeJSInstallation/NodeJS8.16.0
export NODE_HOME
PATH=${PATH}:${NODE_HOME}/bin
export PATH
NODE_PATH=${NODE_HOME}/lib/node_modules
export NODE_PATH

cd ${WORKSPACE}
npm install
npm run build

exit 0

构建脚本不够漂亮,根据自己的实际情况优化一下吧~

完~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137121.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • jrtplib使用笔记[通俗易懂]

    一、简述RTP是目前解决流媒体实时传输问题的最好办法,而JRTPLIB是一个用C++语言实现的RTP库,包括UDP通讯。刚使用JRTPLIB,对JRTPLIB的理解还不够深,当做使用时,积累的一些经验写个笔记吧。二、RTP协议实时传送协议(Real-timeTransportProtocol或简写RTP,也可以写成RTTP)是一个网络传输协议,RTP协议详细说明了在互联

  • 从listView1中选择记录到listView2中「建议收藏」

    从listView1中选择记录到listView2中「建议收藏」publicclassSelectWorker{publicintpAreaID,WorkerID;publicstringpArea,WkName;}

  • 如何在matlab中画二元函数的图像,Matlab画怎么画这个二元函数图像「建议收藏」

    如何在matlab中画二元函数的图像,Matlab画怎么画这个二元函数图像「建议收藏」www.mh456.com防采集。二元函数可以用mesh或者surf函数画图。1、首先打开matlab。2、在matlab当前目录空间右键。3、然后点击new->M-File。4、然后将文件命令为hello.m。5、然后双击该文件,输入[Rmdm]=meshgrid(15:5:50,1:10);6、然后添加f=0.034488*(Rm.^1.9400).*(10^-0….

  • python创建数组的方法_python数组和列表

    python创建数组的方法_python数组和列表另见数组创建相关API简介创建数组有5种常规机制:从其他Python结构(例如,列表,元组)转换numpy原生数组的创建(例如,arange、ones、zeros等)从磁盘读取数组,无论是标准格式还是自定义格式通过使用字符串或缓冲区从原始字节创建数组使用特殊库函数(例如,random)本节不包括复制,连接或以其他方式扩展或改变现有数组的方法。它也不会涵盖创建对象数组或结构化数组。这些都包含在他们自己的章节中。将Pythonarray_like对象转换为Numpy数组通常,在Pytho

    2022年10月30日
  • 微信公众账号开发

    微信公众账号开发微信开发微信公众平台开发(82)天气预报摘要:在这篇教程中,我们将介绍如何在微信公众平台上开发天气预报功能。我们将使用中国天气网的气象数据接口来获取天气信息。这篇教程将介绍以下内容:获取中国天气网的气象数据在微信公众平台中回复天气一、中国天气网中国天气网提供了丰富的气象数据接口。下面我们介绍主要的几个:国家根节点接口:http://flash.weather.c

  • PS磨皮插件一键调色滤镜雅点修图宝典PS工笔画插件素材磨皮滤镜

    PS磨皮插件一键调色滤镜雅点修图宝典PS工笔画插件素材磨皮滤镜工笔画

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号