首页 > 其他分享 >Jenkins入门使用

Jenkins入门使用

时间:2024-12-25 20:43:50浏览次数:5  
标签:TARGET NAME 使用 pid echo jenkins Jenkins docker 入门

Jenkins入门使用

1先安装jdk才能运行jenkins

yum install -y java-1.8.0-openjdk.x86_64


2 安装jenkins,运行,进行端口绑定,启动jenkins

docker search jenkins
docker pull jenkins/jenkins
docker run -d -u root -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins jenkins/jenkins
docker start jenkins


3查看运行状态,

docker ps



4根据CONTAINER ID读取运行日志查看初始密码

docker logs 127e1b3f1587



复制上面的密码,通过浏览器访问服务器ip:8080,粘贴上面的密码。使用按照推荐安装插件,进行初始化安装

安装完成后建立管理员账号。



新建一个任务,


输入名称选择构建一个自由风格的软件项目


复制自己代码的git地址


私人仓库添加添加密码作为凭证进行访问


选择我们想要构建的分支,点击下面的save保存


打开-》全局工具


下载maven

设置maven构建项目,再次打开项目的配置界面找到下图


选择刚刚下载的maven,设置构建执行目标,pom路径设置父级pom文件路径


在系统管理-》插件管理-下载插件(我已经下载过了所以在Installed plugings搜索)应该在Avaliable plugings搜索


在系统管理下设置ssh远程服务


再次打开项目的配置界面,选择下图

设置执行的脚本文件,这里设置的就是本地服务器所以直接执行的本地的jar包,可以设置远程端的服务器,将本地打的包放到其他服务器运行。

脚本:

!/bin/bash

APP_NAME="项目名.jar"
LOG_NAME="/var/jenkins_home/logs/项目名.log"
TARGET_DIR="/var/jenkins_home/jar"
SOURCE_JAR="/var/jenkins_home/workspace/任务名/项目文件夹/项目文件夹/target/$APP_NAME"

#创建必要目录

mkdir -p $TARGET_DIR
mkdir -p $(dirname $LOG_NAME)

#复制文件

if [ -f $SOURCE_JAR ]; then
cp $SOURCE_JAR $TARGET_DIR
echo "文件已复制到 $TARGET_DIR"
else
echo "错误:源文件 $SOURCE_JAR 不存在"
exit 1
fi

#检测程序是否运行

function is_exist() {
pid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
if [ -z "$pid" ]; then
return 1 # 不存在
else
return 0 # 存在
fi
}

if is_exist; then
echo "检测到已启动的程序,pid 是 ${pid}"
kill -9 $pid
echo "程序已停止"
else
echo "程序未运行"
fi

#重新启动程序

if is_exist; then
echo "程序仍在运行,无法重新启动"
else
source /etc/profile
BUILD_ID=dontKillMe
nohup java -Xms300m -Xmx300m -jar $TARGET_DIR/$APP_NAME > $LOG_NAME 2>&1 &
echo "程序已重新启动..."
fi

注:项目名要和我们在pom的build标签下的项目名写的一样才行

标签:TARGET,NAME,使用,pid,echo,jenkins,Jenkins,docker,入门
From: https://www.cnblogs.com/cyqf/p/18631367

相关文章

  • python多进程,通过内存共享来通信,使用进程锁来防止数据问题
    代码:importmultiprocessingimporttime'''使用锁和multiprocessing.Value,multiprocessing.Array,multiprocessing.Manager().list'''defworker1(shared_number1,lock):for_inrange(10):withlock:......
  • vue-cli的搭建和使用
    检查存在vue--version全局安装 npminstall-gvue-clivueinitwebpackvueapp01  1.使用runtime+compilernewVue({el:'#app',router,components:{App},template:'<App/>'})2.runtimeonlynewVue({ el:'#app'......
  • 完全小白的大模型入门科普
    引言:网上关于大模型的文章也很多,但是都不太容易看懂。小枣君今天试着写一篇,争取做到通俗易懂。废话不多说,我们直入主题。█什么是大模型?大模型,英文名叫LargeModel,大型模型。早期的时候,也叫FoundationModel,基础模型。大模型是一个简称。完整的叫法,应该是“人工智能预训练......
  • RabbitMq的运用(1)—— 基础使用方法介绍
    目录1.RabbitMQ-异步世界的同步器1.1.同步调用1.2.异步调用2.RabbitMq安装1.1windows安装1.2docker安装3.网页端操作3.1登录 3.2队列3.3交换机3.3.1绑定交换机和队列的关系3.3.2发送消息到队列3.3.3在队列中查看信息 3.4更换用户3.4.1新增账号3.4.2创建虚拟......
  • python多进程,使用pipe进行进程间的通讯
    importmultiprocessingimporttime'''python多进程pipe在多进程中,进程间的通信是一个常见的需求。管道(Pipe)提供了一种简单有效的进程间通信方式,允许数据在进程间传递。通过使用管道,我们可以让一个进程发送数据,另一个进程接收。以下是一个使用管道在两个进程之间传递......
  • 使用DBeaver连接带有Kerberos认证的hive(亲测可用)
     先下载工具https://yvioo.lanzn.com/isBg42j0fu7e 里面是两个文件一个jar包一个安装包 首先点击kfw-4.1-amd64.msi进行安装,建议直接默认配置安装选择"TYPE"安装完成后点击1、先配置环境变量第一个变量名:KRB5_CONFIG变量值:这个就是Kerberos认证给的krb5.con......
  • C#使用Python.NET执行Python脚本文件踩坑总结
    在VS,Nuget包管理器搜索“Python.NET”,安装pythonnet包,如下图:C#使用Python.NET执行Python脚本文件,C#代码如下:1publicclassPythonExecuter2{3privatereadonlystring_pythonDllPath;4privatereadonlystring_workDir;56publicPythonExecute......
  • windows 下面使用 celery 管理定时任务
    Python实现定时任务有以下几种思路使用子进程(现成)+time.sleep间隔执行使用现有的库管理定时任务如,celery,tornado等使用系统的机制执行linux下面crontab,windows下面taskschd.msc本次调查celery这个常用的异步任务管理框架,它有一下好处支持分布式支持任务确认,即......
  • python版本的Selenium的下载及chrome环境搭建和简单使用
    针对Python版本的Selenium下载及Chrome环境搭建和使用,以下将详细阐述具体步骤:一、Python版本的Selenium下载安装Python环境:确保系统上已经安装了Python3.8及以上版本。可以从[Python官方网站]下载并安装最新版本的Python,当然您也可以使用anaconda3进行安装python环境。......
  • Charles使用教程
    抓包工具:Charles、fiddlecharles较于fiddle的优点:证书全面,可以网页接口数据大部分可以抓取界面易用功能覆盖全面1、测试中的作用前后端通过接口传输数据时,Charles可以从中间抓取数据来看(抓包)可以通过断点来截取数据,并且给前端返回自己想要的数据,或者给后......