当前位置: 首页 > news >正文

jenkins的安装(War包安装)

Jenkins是一个开源的持续集成工具,基于Java开发,主要用于监控持续的软件版本发布和测试项目。‌ 它提供了一个开放易用的平台,使软件项目能够实现持续集成。Jenkins的功能包括持续的软件版本发布和测试项目,以及监控外部调用执行的工作。‌

环境要求

由于此处我们选择的是war包安装, 因此是需要java环境变量的, 相信安转jenkins的小伙伴们都不缺java环境的, 此处不再过多赘述

下载

jenkins官网下载地址: Download and deploy

jenkins的官网提供了多种安装方式, 此处我选择的war包安装, 需要稳定的选择左侧的长期支持版本

注意: 最新版的jenkins是不支持java8的

启动jenkins

下载好的war包放在任意位置即可, 为了启动方便, 我们可以编辑一个启动脚本(linux系统)

将脚本与war包放在同一目录下即可,启动端口为8080,有冲突的需要自行修改

#!/bin/bash## war包名称
JAR_NAME="jenkins.war"## 查找是否有运行的jenkins.war 返回pid
pid=`ps -ef | grep $JAR_NAME | grep -v grep | awk '{print $2}'`## 输出的日志位置 如果报文件不存在,就在jenkins目录下touch nohup.out,就ok了
LOG_PATH=/data/jenkins/nohup.out## 如果pid不存在,说明没有正在运行的jenkins.war,直接启动
if [ -z $pid ]; then## 台运行 jenkins.war --httpPort指定端口8080 ,如果端口被占用了,可指定其他端口## 因为我使用了nginx代理端口,所以使用 --prefix 指定了请求前缀为/jenkins 这个需要在nginx中配置相同前缀/jenkins,就可以外网访问jenkins了## 如果没有使用反向代理,就不需要添加 --prefix="/jenkins" 这一截nohup java -jar $JAR_NAME --httpPort=8080 --prefix="/jenkins"  > $LOG_PATH 2>&1 &## 查看启动后的pidpid=`ps -ef | grep $JAR_NAME | grep -v grep | awk '{print $2}'`echo "Service ${JAR_NAME} is started!pid=${pid}"## 动态查看启动日志tail -f ${LOG_PATH}
## 如果pid存在,说明有正在运行的jenkins.war,需要先杀掉这个进程,再重新启动jenkins.war
else## 杀掉已有进程kill -9 $pid## 重新运行jenkins.warnohup java -jar $JAR_NAME --httpPort=8080 --prefix="/jenkins"  > $LOG_PATH 2>&1 &echo "Service ${JAR_NAME} is restarted!pid=${pid}"tail -f ${LOG_PATH}
fi

注意给脚本执行权限

chmod +x start.sh

访问jenkins

第一次启动jenkins后系统会生成一串密码, 记住这串密码, 登录的时候会用到

 登录

安装插件

安装插件使用推荐即可, 大概率会出现安装失败的情况, 不过也不用慌, 可用过修改源的方式来下载

jenkins国内插件源_jenkins国内源-CSDN博客

 创建管理员账号

 

http://www.lryc.cn/news/488474.html

相关文章:

  • WPS 加载项开发说明wpsjs
  • 【Anomaly Detection论文阅读记录】PaDiM与PatchCore模型的区别与联系
  • uni-app Vue3语法实现微信小程序样式穿透uview-plus框架
  • K8S基础概念和环境搭建
  • [服务器] 腾讯云服务器免费体验,成功部署网站
  • vue中el-select 模糊查询下拉两种方式
  • 深入解析PostgreSQL中的PL/pgSQL语法
  • Vue 3集成海康Web插件实现视频监控
  • 多目标优化算法:多目标蛇鹫优化算法(MOSBOA)求解DTLZ1-DTLZ9,提供完整MATLAB代码
  • 机器翻译基础与模型 之三:基于自注意力的模型
  • 如何使用PCL处理ROS Bag文件中的点云数据并重新保存 ubuntu20.04
  • 背包问题(动态规划)
  • 从0开始学习机器学习--Day26--聚类算法
  • Vue3插槽v-slot使用方式
  • Axure二级菜单下拉交互实例
  • 华为VPN技术
  • CommonsBeanutils与Shiro发序列化利用的学习
  • 运维云计算SRE-第2周
  • React Native 全栈开发实战班 - 用户界面进阶之响应式设计实践
  • SlickGrid点击/双击事件
  • 一文详细深入总结服务器选型
  • 一、Nginx反向代理(七层代理)二、Nginx的TCP/UDP调度器(四层代理)
  • CSS+JQuery 实现弹力球效果,碰到屏幕边框弹回
  • shell编程规范和脚本变量
  • jspm美容院管理系统
  • Prometheus结合K8s(二)使用
  • 【虚幻引擎】UE5数字人开发实战教程
  • 深入分析:固定参考框架在RViz中的作用与对数据可视化的影响 ros ubuntu20.04
  • Android:时间选择器(最下面有效果图)
  • 第十六届蓝桥杯模拟赛(第一期)-c++/c