- 官网下载WAR包
- 配置java环境,启动 : java -jar jenkins.war
- 登录首页 按照提示查找密码登录,设置用户名。
- 下一步提示下载插件,这时候先别点下载。更换jenkins 镜像地址
1 2 3 4 5 6 | #关闭jenkins进程,jenkins目录 war 启动 目录:/root/.jenkins/updates/default.json sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.cloud.tencent.com\/jenkins/g' $JENKINS_HOME/updates/default.json # 如果上边的命令updates.jenkins-ci.org 找不到, 换成 updates.jenkins.io 然后启动重新进入页面,下载插件,速度起飞 |
-
配置各种环境,首页 Manage Jenkins => Global Tool Configuration 需要运行什么配置什么,这个网上搜一大堆
-
我这里使用的目的是实现本地打包,推送到远程服务器发布运行。安装远程发布插件
-
配置远程服务器连接信息 Manage Jenkins =》System Configuration,两种方式(密码或者密钥)
账户密码连接
密钥连接
密钥生成方式,在远程目标服务器上生成
输入命令: ssh-keygen ,按照提示一直Enter键到底,按到如图所示为止
1:在 .ssh 目录下会生成私钥和公钥
2:复制公钥改名authorized_keys 命令:cp id_rsa.pub authorized_keys
3:把私钥内容复制填写到上图 Key 的文本框里,测试 success搞定!
- 新建任务或者先创建试图(右箭头+号)再创建item,相当于分组,默认创建就在ALL里面。
创建任务,构建一个Maven项目
配置GIT连接地址,用户名信息。
下图是远程推送关键步骤 注意详细看
name:就是前几步配置的ssh 那个自定义的名字,下拉框,可以看得到
Source files: 源文件,这个路径,举个例子吧:比如我这个jar 在jenkins的工作空间位置是:.jenkins/workspace/test-dt-service-member/dt-member/dt-member-service/target/dt-member-service-1.0.jar ,这里这个地址填写:dt-member/dt-member-service/target/*.jar
Remove prefix:上传到目标服务器时,需要移除jar包之前的路径,上边source file写的是dt-member/dt-member-service/target/*.jar ,这里移除前缀就是dt-member/dt-member-service/target
Remote directory:上传到目标服务器的那个目录下,之前ssh配置信息的是/data, 这里如果写个test,那么文件就会上传到目标服务器的 /data/test 下
Exec command: 填写执行的脚步命令
以上信息配置好,直接build 测试一下
可能会出现的问题:
1:Transfers 0 file ,检查上边提到的几个关于文件路径的问题
2:在执行脚本的过程中 jenkins 进程不会中断,一直打log 日志,把上图的高级设置打开,把下边选项勾上
3:Jenkins 在构建过程中,如果脚本里繁衍出来其他进程,Jenkins在脚本执行完会杀掉所有进程.比如 我运行一个 sh start.sh ,这个脚本里有一行 java - jar ***.jar 的命令用来启动项目 .这个时候你会发现Jenkins 已经执行完但是项目没启动成功. 只需要在启动脚本上加 nohup 就可以了 nohup sh start.sh
jenkins执行脚本不退出,参考这个大佬