当前位置:首页 » 数据仓库 » jenkins中怎么配置打包的路径
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

jenkins中怎么配置打包的路径

发布时间: 2023-02-24 21:18:20

Ⅰ jenkins把WAR包打到哪里去了

jenkins默认会存放在用户主目录下的.jenkins文件夹中

如:Linux root用户:/root/.jenkins

注意:这是linux版本的。windows系统请自行更改。这个值在Jenkins运行时是不能更改的. 请先将Jenkins停止运行。
如果查看当前Jenkins目录:系统管理→系统设置→主目录→/root/.jenkins(注意:用户不同,路径也不同)

Jenkins储存所有的数据文件在这个目录下. 你可以通过以下几种方式更改:

使用你Web容器的管理工具设置JENKINS_HOME环境参数.
打开tomcat的bin目录,编辑catalina.sh文件。
在# OS specific support. $var _must_ be set to either true or false.上面添加:export JENKINS_HOME=""
在引号中填入你的路径。
在启动Web容器之前设置JENKINS_HOME环境变量.
用root用户登录
编辑profile文件:vi /etc/profile
在最后加入:export JENKINS_HOME=xxxx
保存,退出后执行:source /etc/profile
让配置生效
(不推荐)更改Jenkins.war(或者在展开的Web容器)内的web.xml配置文件.
<!-- if specified, this value is used as the Hudson home directory --> <env-entry> <env-entry-name>HUDSON_HOME</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value></env-entry-value> </env-entry> <!-- 在<env-entry-value>节点中填入路径,windows系统建议使用/分隔路径 -->
好了,现在运行Jenkins看看效果吧。

Ⅱ 用jenkins怎么对web工程打包

1.系统管理->管理插件->可选插件->搜索“Deploy to container Plugin”,勾选插件直接安装,等着Jenkins自动安装完成。此时我们打开我们之前新建的项目选择“增加构建后的操作”中增加了一项“Deploy war/ear to a container",将我们的war和ear工程部署到容器。

2.我们添加一个deploy war/ear to a container选择,Jenkins中构建后操作多出一个发布选项

WAR/EAR files:是war包的相对路径
content path:tomcat的发布路径,即使用localhost/(content path设置的名字)来访问项目.
contaners :发布到的容器,主要可发布到tomcat、jboss、GlassFish
deploy on failure:发生错误的时候是否发布到tomcat
3.点击add contaners 添加发布的容器,我们这里要发布到tomcat,所以我这里添加的是tomcat

Ⅲ jenkins配置文件在哪

当然,你也可以为你的目标机器安装SSH服务。

我先说说解决的思路,然后再附上具体的步骤和shell脚本

思路:将jenkins安装在linux系统上--->SVNcheckout部署的项目--->maven插件编译、打包--->使用jenkins的FTP插件将需要部署的项目或打成的包上传到指定的机器--->执行shell脚本登录该机器进行解压、部署、启动等操作(也可以直接执行写好的shell)。

具体步骤:

(1)源码管理,填写相应的项目SVN地址以及用户名密码

(2)配置mavenbuild,maven插件的配置在系统设置里面设置。

(3)FTP上传

这里的Sourcefiles是jenkins的workspace的相对路径,Removeprefix为取消的前缀(只保留项目名称部分)。

(4)构建时执行脚本

这是Telnet远程登录的脚本
#!/usr/bin/envshUSERNAME=swdev#登录用户名PASSWARD=swdev#登录密码TAR=icore-business-ecif-biz-0.0.1-SNAPSHOT-unix.tar.gz#TAR是上传的压缩包的名字MODEL=provider#MODEL是压缩包根目录的名字和启动的二进制程序名一样DEPLOY_DIR=ecif#DEPLOY_IP是上传文件所在的目录REMOTE_IP=192.168.2.3#登录IP(sleep1;echo"$USERNAME";\sleep1;echo"$PASSWARD";\sleep1;echo"cd\$HOME/$DEPLOY_DIR";\sleep1;echo"chmod+x./deploy";\sleep1;echo"nohup./deploy$TAR$MODEL2>&1>deploy.log&";\sleep10)|telnet$REMOTE_IPexit0
(5)构建后执行脚本deploy.sh(主要用于解压、部署、启动等操作,这个放在上传文件所在的目录中)
#!/usr/bin/envsh##$1tar.gzname#$2providersourcefoldername#set-elog_message{echo"[$(date+%Y%m%d-%H:%M:%S)]$1"}BASDIR=$(dirname$0)if[$#-lt2];thenlog_message"Usage:$(basename$0)[tarname][providername]"exit1fi#Stoppreviousversionandbackup,thenremovepreviouspackageCMD="$BASDIR/$2/bin/$2"if[-e"$2"];then$CMDstopbackup="${2}-$(date+%Y%m%d%H%M%S)"log_message"Backuppreviousapplicationto${backup}.tar.gz"tar-cvf$backup.tar$2gzip${backup}.tarrm-rf$2filog_message"Extractpackagebegin"gunzip-c$1|tar-xvf-#Generatelogdirectorymkdir-p$BASDIR/$2/logslog_message"Startingapplication"$CMDstart
这个脚本只是一个示例,需要根据具体业务具体而定。

最后呢,遇到的几个比较坑的地方拿出来与大家分享下:

FailedtoparsePOMs.

原因:本地服务器和maven服务器之间的连接出现了问题,导致jar包无法下载而报错

解决方法:

vi/etc/hosts

在文件末尾加上你所使用的私服地址如:"192.168.1.1www.nexus.xxx.com"

运行"#/etc/init.d/networkingrestart"重启网络

Ⅳ Jenkins自动部署笔记(二)全局工具配置

前提条件:

1.已安装并启动Jenkins。

2.已安装下列插件。

(1)Git plugin 可能默认已经安装

(2)Git client plugin 可能默认已经安装

(3)Maven Integration plugin

(4)Publish Over SSH 用于远程部署

(5)Gitlab Hook Plugin 用于gitlab提交触发自动部署

以上内容在Jenkins自动部署笔记(一)中有详细介绍

进入系统管理。

进入全局工具配置。

1.JDK

(1)点击“JDK安装...”

(2)点击新增JDK按钮,填写别名(随便起)、JDK安装路径即可。JDK在上一节已安装,所以这里我们直接选择安装路径。

2.Git

填写名称(随便起)、安装路径即可。

3.Maven

点击新增Maven按钮,勾选自动安装,在“从Apache安装”下拉列表中选择一个版本即可。

4.NodeJS(主要用于vue前端项目的自动打包部署)

点击新增NodeJS按钮,填写名称(随便起),勾选自动安装,在版本下拉框中选择一个NOdeJS版本。

5.点击保存按钮后,刚才选择自动安装的工具会在后台自动安装。到此,全局工具配置基本结束。

Ⅳ Jenkins Gitlab 前端构建发布

流程:通常是从gitlab/github拉取项目,构建,把产出文件发到服务器。

一、环境

创建任务之前,要先配置两项:

问题1:jenkins credentials配置SSH

系统管理 -> Manage Credentials -> 全局凭据 (unrestricted) ->添加或者编辑

注意:这里的key是个大坑,最开始我纠结是填私钥还是公钥,发现粘贴进去都不对。(粘贴私钥时我粘贴的是正文,没有复制首尾两行,导致一直报错。)最后把私钥整个粘贴进去就对了。

原因:

由于Jenkins的安全策略配置了CSRF跨站点保护。

解决方案:

进入Jenkins,系统管理-->全局安全配置,勾选匿名用户具有可读权限和去掉CSRF防止跨站点请求伪造:

在 /configure 下

这个插件是jenkins连接linux系统的时候使用。
以下针对插件的每个属性进行说明。

Name
SSH Server的Name属性就是你希望连接的服务器。

Source files
这里输入的是你希望传到服务器的文件夹和文件。路劲是相对jenkins的workspace的项目名称的。例如编译打包后的路径为dist文件夹下的jenkinszip.tar.gz,则Surce files填入dist/jenkinszip.tar.gz。

Remove prefix
如果Source files为dist/jenkinszip.tar.gz,但是不想把dist目录创建到服务器端,这个时候就可以在Remove prefix里填入dist

Remote directory
这里指定文件将被拷贝到服务器的路径。
PS:被拷贝文件在服务器上的完整路径=登录服务器账号的默认路径(就是全局设置的Remote Directory)+当前任务配置的Remote directory。
例如我的服务器路径是 /home/wwwroot/aaa
我全局配置Remote Directory 是 /home/wwwroot
当前任务配置的Remote Directory 是 /aaa/

Exec command
这里就是连接服务器之后需要执行的命令。

注意:这里配置的Secret token和 webhook要填写到gitlab里面,路径如下:

参考文章: https://blog.csdn.net/hou_ge/article/details/103507947