注意:该操作环境是windows系统

1.官网下载

注意jekins各版本不同支持jdk的版本也不同

https://www.jenkins.io/download/

如图进去后可看见最新版,而past releases是历史版本

查看自己各版本的支持

我下载的是2.346.1版本,是war包形式

2.启动jekins

直接在war包路径 java命令启动

java -jar jenkins.war --httpPort=8080原理:启动的时候给命令,让jenkins不终结自己的进程衍生的进程。java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war

启动完成后看输出日志里找到这串密码,就是admin的初始密码

也可在文件里寻找

3.安装基本插件

这里建议选择,推荐安装的插件,保证基本常用的功能可以使用。

然后下载多余插件可在Manage Plugins下载

比如说svn插件:Subversion,远程部署包插件插件:Publish over SSH,等自行根据情况选择

4.配置环境

进入Configure System (系统设置)

在系统设置这里,我们只需要设置最后面的一项,配置远程服务器地址,

  即我们代码最终运行的服务器地址信息,就像我们之前手动部署时使用xshell登录Linux服务器一样,

  当然这里是可以配置多台远程Linux服务器的,配置完成后点击保存即可,为后面我们配置自动化部署做准备,配置如下图

上传代码的根路径可以不填

进入全局配置环境

配置maven

配置jdk

配置代码版本控制,git或svn,自行根据自己情况,svn需自己另行下载插件

配置maven

5.创建工程项目

然后填写描述,或不写

源码管理根据自己情况

然后构建触发器和构建环境里的选项可不勾,自己根据实际情况

构建,选Invoke top-level Maven targets

进行clean install操作

主要是构建和构建后的操作,这两个比较重要

可以在构建里选执行shell脚本等命令,打包后进行的操作

构建后可选 Send build artifacts over SSH

将包发送到指定服务器再进行启动

点击高级勾选这个,能看到远程执行的命令

这里remote directory可单独为每个不同的项目发送到指定的路径.注意windows不能输入盘符,jekins这里只能输入文件夹路径(不包含盘符)

然后输入额外执行的脚本

前提是目的服务器含有该脚本

例如加个main.bat脚本,linux则sh

set source_jar_name=test.jar
set source_file=G:\jenkins\jenkins-workspace\workspace\springboot\target\
set deploy_path=G:\jenkins\deploy\springboot\
set port=8050
#防止jenkins在当前服务器部署项目,启动时终止jar包进程
set BUILD_ID=DONTKILLME#杀掉进程
echo "starting kill process"
echo port : %port%for /f "usebackq tokens=1-5" %%a in (`netstat -ano ^| findstr %port%`) do (if [%%d] EQU [LISTENING] (set pid=%%e)
)
taskkill /f /pid %pid%
echo "finish kill process"echo "starting move process"
move %source_file%%source_jar_name% %deploy_path%
echo "finish move process"echo "starting backup process"
if exist %deploy_path%%source_jar_name% (
copy %deploy_path%%source_jar_name% "%deploy_path%staff-%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%.jar"
) else (
echo "not exist"
)
echo "finish backup process"echo "starting project process"
start javaw  -jar %deploy_path%%source_jar_name% --server.port=%port% > log.log &
echo "finish project process"

部署前端则需在构建环境设置node

首先在Configure System 配置环境变量

windows系统的Path的值则cmd命令输入Path复制下来,Linux则查看PATH命令为echo $PATH

然后在项目构建环境设置node环境变量和控制台输出

然后脚本

set source_name=dist
set source_file=G:\jenkins\jenkins-workspace\workspace\test-vue\
set deploy_path=G:\jenkins\deploy\test-vue\
set deploy_name=test_webcd %source_file%
yarn install && yarn build
zip -r dist.zip dist
move %source_file%dist.zip %deploy_path%
copy %deploy_path%dist.zip "%deploy_path%dist-%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%.zip"
if exist %deploy_path%%deploy_name% ( rd /s /q %deploy_path%%deploy_name%
) else (
echo "not exist"
)
unzip -o -d %deploy_path% %deploy_path%dist.zip
ren %deploy_path%%source_name% %deploy_name%

若前端打包报错则看看有无这条

Treating warnings as errors because process.env.CI = true.

这条会将warning警告当成error处理,所以jenkins打包会报错

需要调整为false

在执行命令npm build之前设置 export CI=false,可在Jenkins或者前端构建命令语句中添加。

jenkins则在

Configure System配置添加一个CI环境变量

防止jenkins杀掉衍生进程,包括运行的java命令

所以需要在配置Configure System

添加两个环境变量

若是部署项目到windows环境运行

目前jenkins还是会kill掉java运行的进程

但找到一种方法,注册为windows service 服务,然后启动服务就不会被kill掉

用winsw将jar包做成window后台服务

前面的文章,将jar包打包成exe工具里有写

jar包打包成exe安装包_小波波啊的博客-CSDN博客_jar包打包成exe

Jekins安装和部署相关推荐

  1. Jekins安装配置教程

    一.Jekins安装配置 在官网下载jenkins.war并安装 登录后需要配置jdk,maven,git三个工具 1.配置工具 2.安装Maven Integration plugin 3.安装远程 ...

  2. Qt最新版5.14在Windows环境静态编译安装和部署的完整过程 VS 2019-Qt static link build Windows 32 bit/64 bit

    文章目录 为什么要静态编译(static link) 1.源码下载/source code download 2. 编译工具下载/compiler download 编译环境选择:MinGW/MSVC ...

  3. Qt最新版5.13在Windows环境静态编译安装和部署的完整过程(VS 2017/VS 2019)

    文章目录 为什么要静态编译 1.源码下载 2. 编译工具下载 ActivePerl Python Ruby 编译环境选择 3.编译 1.修改源码里的qtbase\mkspecs\common\msvc ...

  4. Qt最新版5.12在Windows环境静态编译安装和部署的完整过程(VS2017)

    文章目录 为什么要静态编译 1.源码下载 2. 编译工具下载 ActivePerl Python Ruby 编译环境选择 3.编译 1.修改源码里的qtbase\mkspecs\common\msvc ...

  5. Ansible的安装及部署

    Ansible的安装及部署 1 实验环境 2 Ansible的安装 3 Ansible的基本信息 4 构建Ansible清单 4.1 全局清单 4.2 设定受控主机的组 4.2.1 清单查看 4.2. ...

  6. idea上传项目到码云_mall前端项目的安装与部署

    本文主要讲解mall前端项目mall-admin-web的在Windows和Linux环境下的安装及部署. Windows下的安装及部署 下载nodejs并安装 下载地址:https://nodejs ...

  7. Linux下Redis3.2的安装和部署

    redis简介: redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

  8. vSphere虚拟化之ESXi安装及部署

    vSphere虚拟化之ESXi的安装及部署(上) 一.什么是vSphere? vSphere是VNware公司在2001年基于云计算推出的一套企业级虚拟化解决方案.核心组件为ESXi.如今,经历了5个 ...

  9. 探讨微软团队开发利器VSTS之安装及部署篇

    一.引言Visual Studio 2005 Team System是微软结合MSF成功开发经验的基础上,首次由软件开发领域延伸至整个软件开发生命周期管理的开发工具.Visual Studio 200 ...

最新文章

  1. 操作系统读写者问题实验报告_基于S3C2410微处理器和操作系统实现光电测量仿真检测系统的设计...
  2. mysql 基本配置_MySQL 基本配置
  3. 计划任务工具 cron 的配置和说明
  4. matlab调用kmeans_matlab做聚类分析(k-means)
  5. 解决IE6下,给图片加上line-height属性不起作用的方法
  6. Ubuntu瘦身与扩容运动
  7. 读取excel并将其转换为xml
  8. markdown编辑技巧
  9. scala Set入门到熟悉
  10. BZOJ3270 博物馆(高斯消元+概率期望)
  11. excel 工作表保护密码破解代码
  12. Word批量转PDF,宏批量转PDF
  13. 最大子段和C语言实现
  14. 郝斌c语言96-99,《祁连山Photoshop CS3专家讲堂系列教程》[ISO]
  15. 最新行政区划省市区镇街道村 导入数据库 MYSQL (2021年4月 )
  16. mysql innodb_data_read_Innodb_data_read 与Innodb_data_reads的区别
  17. 非对称TSP问题(asymmetric travelling salesman problem)与对称TSP问题的转换
  18. 计算机没有显示远程桌面连接,连接远程桌面时出现:“这台计算机没有远程桌面客户端访问许可”,怎么处理?...
  19. linux云主机登陆教程,登录linux云服务器的详情步骤
  20. App inventor打地鼠

热门文章

  1. UVA - 10118 Free Candies 记忆化搜索
  2. android listview 的下拉刷新
  3. bp配置 sap_SAP HANA BP主数据增强-对标准字段客户化检查
  4. 输入地址查询并获取地址的经纬度-百度地图-JS
  5. latex+bibtex+jabref
  6. CART分类与回归树的原理与实现
  7. 01-数据结构和算法入门
  8. OneData方法论-概述
  9. 【项目管理冲刺-必会概念】
  10. oracle查询不走索引的一些情况(索引失效)