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

在服务器上搭建Jenkins

 

目录

1.服务器要求

2.官方文档

3.在服务器上下载Jenkins

3.1 下载war包

3.2 将war包上传到服务器的一个目录下

3.3 启动jenkins

3.3.1 jdk版本升级

1)下载jdk17

2)解压到当前文件夹

3)配置路径

4.jenkins配置

4.1 填写初始密码,激活系统

4.2 选择插件

4.3 设置初始密码

4.4 插件需要重启才能生效

5.Jenkins项目构建

5.1 构建完成效果

5.2 构建springcloud项目

5.3 构建vue项目

6.Jenkins后台运行

7.关闭JenKins


近年来,在软件开发领域,git作为版本管理工具已经被广泛应用。而gitlab则是一个基于git的代码托管平台,提供了代码仓库、issue跟踪、CI/CD等功能,被越来越多的企业和团队所使用。

1.服务器要求

1、CPU:建议使用双核或以上的CPU。

2、内存:建议使用4GB或以上内存。

3硬盘:建议使用至少50GB的硬盘空间,如果需要使用git-lfs,则建议使用100GB或以上的硬盘空间。

4、操作系统:建议使用Linux操作系统,推荐使用Ubuntu或CentOS操作系统。

5、依赖项:

a)curl、openssh-server、ca-certificates软件包。

b)PostgreSQL或MySQL数据库。建议使用PostgreSQL数据库。

c)Redis服务。该服务用于处理gitlab的后台任务。

d)nginx或apache服务。gitlab使用其中的一个服务作为web服务器,推荐使用nginx。

3Gitlab:通过官方网站下载相应版本的gitlab安装包。也可以通过源码来安装gitlab。

2.官方文档

集成构建工具

用户手册

3.在服务器上下载Jenkins

3.1 下载war包

http://mirrors.jenkins.io/war-stable/latest/jenkins.war

3.2 将war包上传到服务器的一个目录下

3.3 启动jenkins

来到war包所在目录下

java -jar jenkins.war --httpPort=45

如果出现git自动触发时报错403,启动加如下参数可以解决问题:

nohup java -jar -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true  /www/wwwroot/yangsaiya/server/jenkins.war --httpPort=45  &

如果出现下面提示:

表示需要jdk的版本为11或17.

3.3.1 jdk版本升级

1)下载jdk17

wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

2)解压到当前文件夹

tar -zxvf jdk-17_linux-x64_bin.tar.gz

3)配置路径

我的jdk在/usr/java目录下

进入/etc/profile.d目录下

cd /etc/profile.d

在此目录下新建一个java.sh文件

将环境变量写入里面

export JAVA_HOME=/usr/java/jdk-17.0.8
export PATH=$JAVA_HOME/bin:$PATH

之后来到/etc/profile.d/目录下运行脚本

cd /etc/profile.d
source java.sh

之后在任何目录下

java -version

就可以看到jdk版本已经变成了17

启动

4.jenkins配置

在浏览器上访问你的服务器ip地址加端口号。

4.1 填写初始密码,激活系统

4.2 选择插件

4.3 设置初始密码

4.4 插件需要重启才能生效

对jenkins进行重启,之后进行插件的下载

下载插件,以springboot为例:

  • Maven Integration:Maven 构建工具。
  • Publish Over SSH:整个工具,将来把 Jenkins 打包好的 jar 上传到应用服务器上。
  • Gitee:协助使用 Gitee 仓库。

安装成功后,重启Jenkins。

5.Jenkins项目构建

可以参考文档:三:Jenkins项目构建 · jenkins · 看云

5.1 构建完成效果

5.2 构建springcloud项目

注意:如果构建失败,可以加上这一行:

#!/usr/bin/env bash
mvn package
cd /root/docker-compose-vote
docker-compose down
docker-compose up -d

5.3 构建vue项目

#!/usr/bin/env bash
yarn
yarn build
cd /root/docker-compose-vote-front
docker-compose down
docker-compose up -d

6.Jenkins后台运行

 java -jar jenkins.war --httpPort=45 & 

执行以下三步:

(1)执行java -jar xxx.jar后

(2)ctrl+z 退出到控制台,执行 bg

(3)exit

完成以上3步,退出shell后,jar服务一直在后台运行。

nohup java -jar jenkins.war --httpPort=8080 &

ps:不要直接关掉xshell窗口,先退出exit,再关闭。

7.关闭JenKins

输入网址:

服务器ip地址+端口号/exit

点击按钮,可以看到已经关闭了。

再访问JenKins已经访问不到了。

相关文章:

在服务器上搭建Jenkins

目录 1.服务器要求 2.官方文档 3.在服务器上下载Jenkins 3.1 下载war包 3.2 将war包上传到服务器的一个目录下 3.3 启动jenkins 3.3.1 jdk版本升级 1)下载jdk17 2)解压到当前文件夹 3)配置路径 4.jenkins配置 4.1 填写初始密码&a…...

全面解析MES系统中的报工操作

一、报工操作的定义: 报工操作是指在生产过程中,操作员通过MES系统记录和提交生产工序的相关信息,如工时、产量、质量等。报工操作将生产过程中的实际情况反馈给MES系统,实现生产数据的实时采集和记录。 二、报工操作的流程&…...

Harbor 私有仓库迁移

文章目录 一.私有仓库迁移的介绍1.为何要对Harbor 私有仓库的迁移2.Harbor 私有仓库的迁移特点3. Harbor 私有仓库的迁移注意要点 二.私有仓库迁移配置1.源Harbor配置(192.168.198.11)(1)接着以下操作查看容器状况及是否可以登录 …...

制造业物联网革命:智慧工厂数据采集与远程监控管理

智慧工厂是指运用现代信息技术和物联网技术,实现制造业生产过程的智能数字化。智慧工厂的工业设备不仅能够自动化运行,还可以通过网络技术帮助企业实现数据采集、远程监控与管理。4G工业网关便成为了智慧工厂通讯的重要组成部分,起到了连接工…...

软考A计划-网络工程师-复习背熟-网络管理和计算机基础知识

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 👉关于作者 专注于Android/Unity和各种游…...

springBoot打印精美logo

文章目录 🐒个人主页🏅JavaEE系列专栏📖前言:🎀文本logo 🐒个人主页 🏅JavaEE系列专栏 📖前言: 本篇博客主要以提供springBoot打印精美logo 🎀文本logo ??…...

kali开启SSH服务(简单无比)

我会一直陪着你 1.切换到管理员用户:2.启动SSH服务3.要在Kali Linux上启用SSH服务并修改配置文件,你可以按照以下步骤进行操作:4.查看SSH服务状态是否正常运行,命令为:注意:配置文件有些地方不同&#xff0…...

Ubuntu20.04如何更换国内源-阿里云源

1.备份源文件 cp /etc/apt/sources.list /etc/apt/sources.list.bak 2.打开源文件,注释默认的源 vim /etc/apt/sources.list ## 注释原本内容 # deb http://mirrors.ivolces.com/ubuntu/ focal main restricted universe multiverse # deb-src http://mirrors.ivolc…...

goland设置

1、go file设置 file->setting->Editor->File and Code Templates->Go File package ${GO_PACKAGE_NAME} /** * description: * author:${USER} * date:${YEAR}/${MONTH}/${DAY} ${HOUR}:${MINUTE} * Versio…...

2023年Java核心技术第十篇(篇篇万字精讲)

目录 十九 . 一个线程两次调用start()方法会出现什么情况?线程的生命周期和状态转移。 19.1 典型回答 19.1.1 线程生命周期: 19.1.2 计时等待详细解释: 19.2 深入扩展考察 19.2.1 线程是什么? 19.2.2 Green…...

分享一篇关于如何使用BootstrapVue的入门指南

你想轻松地创建令人惊叹且响应式的在线应用程序吗?使用BootstrapVue,您可以快速创建美观且用户友好的界面。这个开源工具包是基于Vue.js和Bootstrap构建的,非常适合开发现代Web应用程序。本文将介绍其基础知识,让您可以开始使用这…...

【1day】复现Cellular Router命令执行漏洞

目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现 一、漏洞描述 移动路由器(Cellular Router)是一种利用移动网络提供无线互联网连接的设备。它们类似于传统路由器,但不同于使用有线连接(如以太网或DSL)...

【Torch API】pytorch 中repeat_interleave函数详解

torch.repeat_interleave(input, repeats, dimNone) → Tensor Repeat elements of a tensor. Parameters input (Tensor) – the input tensor. repeats (Tensor or int) – The number of repetitions for each element. repeats is broadcasted to fit the shape of the …...

TDesign表单rules通过函数 实现复杂逻辑验证输入内容

Element ui 中 我们可以通过validator 绑定函数来验证一些不在表单model中的值 又或者处理一下比较复杂的判断逻辑 TDesign也有validator 但比较直观的说 没有Element那么好用 这里 我们给validator绑定了我们自己的checkAge函数 这个函数中 只有一个参数 value 而且 如果你的…...

springgateway网关修改响应后,部分中文乱码问题

原因 是因为响应体过大&#xff0c;开启了压缩&#xff0c;数据分段进行响应得&#xff0c;导致处理返回体得时候乱码 解决方式 Overridepublic Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {ServerHttpRequest request exchange.getR…...

微信开发之一键发布群公告的技术实现

简要描述&#xff1a; 设置群公告 请求URL&#xff1a; http://域名地址/setChatRoomAnnouncement 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必…...

R语言和Python用泊松过程扩展:霍克斯过程Hawkes Processes分析比特币交易数据订单到达自激过程时间序列...

全文下载链接&#xff1a;http://tecdat.cn/?p25880 本文描述了一个模型&#xff0c;该模型解释了交易的聚集到达&#xff0c;并展示了如何将其应用于比特币交易数据。这是很有趣的&#xff0c;原因很多。例如&#xff0c;对于交易来说&#xff0c;能够预测在短期内是否有更多…...

自动化运维:Ansible脚本之playbook剧本

目录 一、理论 1.playbooks 2.YAML 3.使用ansible批量安装apache服务 4.定义、引用变量 5.指定远程主机sudo切换用户 6.when条件判断 7.迭代 8.Templates 模块 9.tags 模块 10.Roles 模块 二、实验 1.使用ansible批量安装apache服务 2.定义、引用变量…...

基于角色访问控制-RBAC(Role-Based Access Control)

1.RBAC简介 RBAC&#xff08;Role-Based Access Control&#xff09;是一种基于角色的访问控制模型&#xff0c;它是一种安全策略&#xff0c;用于限制系统中用户对资源的访问权限。RBAC模型的核心概念是用户角色和资源访问权限。 在角色访问控制中&#xff0c;首先需要定义系…...

springboot项目实现断点续传

java代码 package com.ruoyi.web.upload.controller; import com.ruoyi.web.upload.dto.FileChunkDTO; import com.ruoyi.web.upload.dto.FileChunkResultDTO; import com.ruoyi.web.upload.result.Result; import com.ruoyi.web.upload.service.IUploadService; import org.s…...

体验Taotoken多模型路由带来的高稳定性与低延迟响应

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 体验Taotoken多模型路由带来的高稳定性与低延迟响应 在构建依赖大模型能力的应用时&#xff0c;开发者最关心的两个核心指标往往是…...

告别AT指令恐惧:用STM32F407驱动SIM800C实现短信报警(附完整代码)

STM32F407与SIM800C实战&#xff1a;构建工业级短信报警系统的完整指南 在工业自动化、智能家居和远程监控领域&#xff0c;可靠的异常通知机制往往决定着系统响应速度与故障处理效率。传统有线报警方式受限于物理距离&#xff0c;而基于Wi-Fi的解决方案又面临网络覆盖的挑战。…...

手把手教你用Vivado配置Xilinx SEM IP 3.1:从IP Catalog到Tera Term串口调试全流程

手把手教你用Vivado配置Xilinx SEM IP 3.1&#xff1a;从IP Catalog到Tera Term串口调试全流程 在FPGA开发中&#xff0c;软错误缓解&#xff08;SEM&#xff09;IP核是确保设计可靠性的关键组件。对于使用Xilinx Artix-7系列芯片的工程师来说&#xff0c;掌握SEM IP的完整配置…...

实战应用场景:Codex CLI在开发工作流中的最佳实践

实战应用场景&#xff1a;Codex CLI在开发工作流中的最佳实践 本文详细介绍了Codex CLI在现代化开发工作流中的四个关键应用场景&#xff1a;代码重构与组件现代化迁移、自动化测试生成与执行、安全漏洞扫描与代码审查、以及批量文件操作与Git集成。通过实际案例展示了如何利用…...

Perplexity引用格式设置全链路解析(含BibTeX/CSL/DOI自动映射底层逻辑)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;Perplexity引用格式设置全链路解析&#xff08;含BibTeX/CSL/DOI自动映射底层逻辑&#xff09; Perplexity 在学术写作支持中并非原生集成引文管理&#xff0c;但其底层可对接外部文献元数据服务&#xff0c;实…...

10大好用WMS系统盘点!2026年企业WMS系统选型实战指南

在2026年企业数字化转型的浪潮中&#xff0c;WMS系统&#xff08;仓储管理系统&#xff09;已经成为提升供应链效率的核心工具。面对市面上琳琅满目的WMS系统&#xff0c;企业如何进行精准的WMS系统选型&#xff0c;成为了管理者面临的一大难题。为了帮助大家避坑&#xff0c;本…...

ARM中断机制深度解析:从硬件原理到实战调试与RTOS应用

1. 项目概述&#xff1a;从一行代码到硬件响应“ARM体系架构处理器的中断程序分析”这个标题&#xff0c;对于很多嵌入式开发者和系统软件工程师来说&#xff0c;就像一把钥匙。它指向了连接软件逻辑与硬件实时响应的核心枢纽。我处理过太多因为中断没玩明白而导致的系统“玄学…...

前沿:小目标检测,YOLOv11n 再进化!

点击蓝字 关注我们 关注并星标 从此不迷路 计算机视觉研究院 公众号ID&#xff5c;计算机视觉研究院 学习群&#xff5c;扫码在主页获取加入方式 https://sensors.myu-group.co.jp/sm_pdf/SM4311.pdf 计算机视觉研究院专栏 Column of Computer Vision Institute 基于最新 YOLOv…...

Tina Linux嵌入式图形系统开发实战指南:从架构解析到性能优化

1. 项目概述&#xff1a;为什么我们需要一份图形系统开发指南&#xff1f;在嵌入式Linux的世界里&#xff0c;图形用户界面&#xff08;GUI&#xff09;的开发一直是个既迷人又充满挑战的领域。从智能家居的中控屏、工业HMI到车载信息娱乐系统&#xff0c;一个流畅、稳定且美观…...

别再只用K-Means了!用DBSCAN搞定非球形数据聚类(附Python代码实战)

突破K-Means局限&#xff1a;DBSCAN在复杂数据聚类中的实战指南 当数据科学家面对那些"不听话"的非球形分布数据集时&#xff0c;传统K-Means算法往往会束手无策。想象一下这样的场景&#xff1a;你的客户分群数据呈现出笑脸形状的分布&#xff0c;或者市场调研数据形…...