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

[Docker实现测试部署CI/CD----相关服务器的安装配置(2)]

目录

  • 6、Jenkins安装配置
    • 安装jdk
    • 安装maven
    • 拉取镜像
    • 启动jenkins
    • 修改数据卷权限
    • 浏览器访问
    • 安装插件
    • 配置jenkins
    • 移动JDK和Maven
    • 配置JDK和Maven

6、Jenkins安装配置

        Jenkins 是一个开源软件项目,是基于 Java 开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。

安装jdk

下载Linux版本的jdk,解压到/usr/local目录

tar -zvxf jdk-8u171-linux-x64.tar.gz -C /usr/local

进入/etc/profile目录,设置环境变量

vim /etc/profile
JAVA_HOME=/usr/local/jdk1.8.0_171
PATH=$JAVA_HOME/bin:$PATH
export PATH

刷新配置文件,输入java,能看到输出即成功

source /etc/profile

安装maven

        首先需要从官网下载最新版本的 Maven 到 Linux 系统后,直接解压。这里下载的是 apache-maven-3.9.0-bin.tar.gz,将其解压到/opt/apps 目录下,并重命名为 maven。

下载

[root@jenkins ~]# wget https://dlcdn.apache.org/maven/maven-3/3.9.3/binaries/apache-maven-3.9.3-bin.tar.gz

解压并重命名

[root@jenkins ~]# tar -zvxf apache-maven-3.9.3-bin.tar.gz -C /usr/local/
[root@jenkins local]# mv apache-maven-3.9.3/ maven

配置maven镜像仓库

maven解压后需要修改解压目录中conf/settings.xml文件中的两处配置。这里配置maven 的镜像源为 aliyun。

<mirror><id>alimaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>

配置 maven 编译器版本

        maven 默认的编译器版本为 JDK1.4,这里需要指定为 JDK1.8。配置了该后,在 文件最后的中再激活一下即可。

<profile><id>jdk-8</id><activation><activeByDefault>true</activeByDefault><jdk>1.8</jdk></activation><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion></properties>
</profile>
<activeProfiles><activeProfile>jdk-8</activeProfile>
</activeProfiles>

拉取镜像

[root@jenkins opt]# docker pull jenkins/jenkins:lts

启动jenkins

[root@jenkins opt]# docker run --name jenkins --restart always -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -d jenkins/jenkins:lts

修改数据卷权限

        当 Jenkins 启动后,通过 docker logs jenkins 命令查看 jenkins 的日志可以看到出错了。

在这里插入图片描述

        原因是,jenkins 需向数据卷挂载点的文件/var/jenkins_home/copy_reference_file.log 中写 入日志时,由于写入操作的用户不是 root 用户,而非 root 用户对数据卷没有写操作权限。

此时需要修改数据卷操作权限,为非 root 用户添加写操作权限。

[root@jenkins var]# chmod -R 777 /var/jenkins_home

重新启动jenkins

[root@jenkins var]# docker restart jenkins

浏览器访问

在这里插入图片描述

        由于 jenkins 在后期运行时需要下载很多的插件,而这些插件默认都是从国外的 Jenkins 官方服务器上下载的,下载速度很慢,将这些插件 的下载源更新为国内的服务器。 该更新文件是数据卷目录中的 /var/jenkins/hudson.model.UpdateCenter.xml

查看该文件内容

[root@jenkins jenkins_home]# cat hudson.model.UpdateCenter.xml 
<?xml version='1.1' encoding='UTF-8'?>
<sites><site><id>default</id><url>https://updates.jenkins.io/update-center.json</url></site>
</sites>

将该默认的更换为清华大学的下载源地址

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json

[root@jenkins jenkins_home]# cat hudson.model.UpdateCenter.xml 
<?xml version='1.1' encoding='UTF-8'?>
<sites><site><id>default</id><url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json</url></site>
</sites>

查看密码

[root@jenkins jenkins_home]# docker logs jenkinsdocker logs

在这里插入图片描述

安装插件

登录之后,选择插件来安装

在这里插入图片描述

选择默认插件安装

在这里插入图片描述

创建管理员账户

在这里插入图片描述

在这里插入图片描述

第二次登录为创建管理员用户名和密码

用户名:shengxia

密码:123456

在这里插入图片描述

配置jenkins

        点击 Manage Jenkins 中的 Manage Plugins 页面,在Available plugins选项卡页面的搜索 栏中分别键入 Git ParameterPublish Over SSHPythonPyenv Pipeline,选中它们后,Install without restart

在这里插入图片描述

下载完成

在这里插入图片描述

移动JDK和Maven

        将 Jenkins 主机中的 JDK Maven 解压目录移动到数据卷/var/Jenkins_home 中。

[root@jenkins local]# cd /var/jenkins_home/
[root@jenkins jenkins_home]# mv /usr/local/jdk1.8.0_171/ ./
[root@jenkins jenkins_home]# mv /usr/local/maven/ ./

配置JDK和Maven

JDK配置

在这里插入图片描述

Maven配置

相关文章:

[Docker实现测试部署CI/CD----相关服务器的安装配置(2)]

目录 6、Jenkins安装配置安装jdk安装maven拉取镜像启动jenkins修改数据卷权限浏览器访问安装插件配置jenkins移动JDK和Maven配置JDK和Maven 6、Jenkins安装配置 Jenkins 是一个开源软件项目&#xff0c;是基于 Java 开发的一种持续集成工具&#xff0c;用于监控持续重复的工作&…...

LC-980. 不同路径 III(回溯)

980. 不同路径 III 难度困难291 在二维网格 grid 上&#xff0c;有 4 种类型的方格&#xff1a; 1 表示起始方格。且只有一个起始方格。 2 表示结束方格&#xff0c;且只有一个结束方格。 0 表示我们可以走过的空方格。 -1 表示我们无法跨越的障碍。 返回在四个方向&…...

软件测试缺陷报告

缺陷报告是描述软件缺陷现象和重现步骤地集合。软件缺陷报告Software Bug Report&#xff08;SBR&#xff09;或软件问题报告Software Problem Report&#xff08;SPR&#xff09; 作用&#xff1a;缺陷报告是软件测试人员的工作成果之一&#xff0c;体现软件测试的价值缺陷报…...

vue js-table2excel 导出excel 可带多张图片

1.安装js-table2excel插件&#xff1a; npm install js-table2excel2.使用 2.1:引入 import table2excel from js-table2excel;2.2:导出函数 function exportExcel() {console.log(导出, table2excel);const column [{title: 二维码id,key: fname,type: text,},{title: 二维…...

HTML 基础标签

前言 当今互联网时代&#xff0c;网页是我们获取信息、交流和展示自己的重要渠道之一。而HTML&#xff08;超文本标记语言&#xff09;作为构建网页的基础&#xff0c;学习掌握HTML标签成为了必不可少的技能。 标题标签 <h1>~<h6>&#xff1a;这是用来定义标题的…...

Nginx使用proxy_cache指令设置反向代理缓存静态资源

场景 CentOS7中解压tar包的方式安装Nginx&#xff1a; CentOS7中解压tar包的方式安装Nginx_centos7 tar文件 怎么load_霸道流氓气质的博客-CSDN博客 参考上面流程实现搭建Nginx的基础上&#xff0c;实现静态资源的缓存设置。 注意上面安装时的目录是在/opt/nginx目录下&…...

React安装ant design组件库,并使用

ant design是一个很棒的组件库&#xff0c;官方地址&#xff1a;快速上手 - Ant Design 但是如何在React里面用起来&#xff0c;好像并不是很顺畅&#xff0c;没有像Vue里面那么友好&#xff0c;因为我踩过这个坑&#xff0c;虽然安装很简单&#xff0c;但是想要出样式&#x…...

Leetcode | 有效的括号、最长有效括号

一、有效的括号 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应…...

思科模拟器配置静态路由(下一跳使用IP)

Router0配置代码&#xff1a;##端口配置 Router(config)#int fastEthernet 0/0 Router(config-if)#ip address 192.168.10.254 255.255.255.0 Router(config-if)#no shutdown Router(config-if)#int fastEthernet 0/1 Router(config-if)#ip address 192.168.20.1 255.255.255.2…...

MyBatis -- 执行流程

传统JDBC开发 代码样例 import java.sql.*;public class JdbcExample {public static void main(String[] args) {Connection conn DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password");// 创建…...

springboot背诵

1、springboot简介 2、spring注解 Bean&#xff1a; Configuration&#xff1a; Component&#xff1a; Controller&#xff1a; Service&#xff1a; Repository&#xff1a; ComponentScan&#xff1a; Import&#xff1a; Conditional&#xff1a; ConfigurationProperties&…...

WebGL: 几个入门例子

本文罗列几个WebGL入门例子&#xff0c;用于帮助WebGL学习。 例子1&#xff1a;绘制三角形 <!DOCTYPE HTML> <html loang"en"><head><title>Triangle</title><meta charset"utf-8"><script>var gl;var canvas…...

App Cleaner Uninstaller for Mac 苹果电脑软件卸载工具

App Cleaner & Uninstaller 是一款非常有用的 Mac 应用程序清理和卸载工具。它可以彻底地清理系统中的应用程序、扩展和残留文件&#xff0c;以释放磁盘空间并优化系统性能。 此外&#xff0c;它还提供了磁盘空间监控和智能清理建议等功能&#xff0c;使用户可以轻松地管理…...

基于Yolov2深度学习网络的车辆检测算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1. 卷积神经网络&#xff08;CNN&#xff09; 4.2. YOLOv2 网络 4.3. 实现过程 4.4. 应用领域 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022A 3.部分核心…...

Java的I/O类库- NIO

Java NIO&#xff08;New I/O&#xff09;是Java平台提供的一种用于非阻塞I/O操作的API。它引入了一组新的Java类&#xff0c;用于实现高性能的、非阻塞的I/O操作&#xff0c;以替代传统的阻塞式I/O&#xff08;IO Blocking&#xff09;模型。Java NIO的核心是基于Channel&…...

【ASP.NET MVC】使用动软(三)(11)

一、问题 上文中提到&#xff0c;动软提供了数据库的基本操作功能&#xff0c;但是往往需要添加新的功能来解决实际问题&#xff0c;比如GetModel&#xff0c;通过id去查对象&#xff1a; 这个功能就需要进行改进&#xff1a;往往程序中获取的是实体的其他属性&#xff0c;比如…...

基于MATLAB长时间序列遥感数据植被物候提取与分析

MATLAB MATLAB是美国MathWorks公司出品的商业数学软件&#xff0c;用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人&#xff0c;控制系统等领域。 [1] MATLAB是matrix&laboratory两个词的组合&#xff0c;意为矩阵工厂&a…...

K8S deployment 重启的三种方法

一般重启deployment&#xff0c;常规操作是删掉对应的pod, 但如果有多个副本集的话&#xff0c;一个个删很麻烦。 除了删除pod&#xff0c;还可以&#xff1a; 方案一&#xff1a; 加上环境变量 kubectl patch deploy <deployment-name> -p {"spec":{"…...

解决Linux下PyCharm无法新建文件

一、问题描述 如图&#xff0c;在Ubuntu Linux系统中使用pycharm管理项目时&#xff0c;提示无法新建.py源文件&#xff1a; 二、问题解决 将问题定性为文件夹&#xff08;目录&#xff09;权限问题&#xff0c;在终端中打开项目文件夹的上级目录&#xff0c;将整个项目目录的…...

规则引擎技术解决方案

1 概述 1.1 规则引擎的背景 业务系统在应用过程中&#xff0c;常常包含着要处理“复杂、多变”的部分&#xff0c;这部分往往是“业务规则”或者是“数据的处理逻辑”。因此这部分的动态规则的问题&#xff0c;往往需要可配置&#xff0c;并对系统性能和热部署有一定的要求。从…...

Flink技术实践-实时流中的脏数据治理

一、背景介绍在大数据实时计算领域&#xff0c;脏数据就像一颗定时炸弹&#xff0c;随时可能引爆业务系统 —— 轻则导致计算结果错误&#xff0c;重则引发线上故障&#xff0c;影响业务活动。某电商平台因订单金额字段脏数据&#xff08;负数、超大值&#xff09;导致实时销售…...

如何快速解决Windows快捷键冲突:完整实用指南

如何快速解决Windows快捷键冲突&#xff1a;完整实用指南 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是否遇到过精心…...

笔记草稿本

...

XUnity.AutoTranslator终极指南:如何为Unity游戏实现实时自动翻译

XUnity.AutoTranslator终极指南&#xff1a;如何为Unity游戏实现实时自动翻译 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator是一款功能强大的Unity游戏实时翻译插件&#xff0c;专…...

从“人海战术”到“算法军团”:TVA引发的劳动力革命(4)

——岗位重构&#xff1a;TVA时代&#xff0c;制造业劳动力的岗位迭代与技能升级TVA“算法军团”的普及&#xff0c;不仅替代了传统的体力型、重复型劳动力&#xff0c;更引发了制造业岗位体系的颠覆性重构——大量传统岗位被淘汰&#xff0c;一批全新岗位应运而生&#xff0c;…...

Js2Py错误处理与调试:解决常见问题的终极指南

Js2Py错误处理与调试&#xff1a;解决常见问题的终极指南 【免费下载链接】Js2Py JavaScript to Python Translator & JavaScript interpreter written in 100% pure Python&#x1f680; Try it online: 项目地址: https://gitcode.com/gh_mirrors/js/Js2Py Js2Py是…...

AI技术赋能学术写作,自动目录生成与内容优化,效率飞跃时间节省。

工具对比速览 工具名称 核心功能 处理速度 适用场景 特色优势 aibiye AI降重目录生成 20分钟 学术论文 知网/维普/格子达适配 aicheck AI检测目录优化 实时 初稿检查 多平台规则预判 askpaper 学术规范处理 15-30分钟 期刊投稿 保留专业术语 秒篇 一键式处…...

突破内容访问限制:从原理到实践的完整指南

突破内容访问限制&#xff1a;从原理到实践的完整指南 在信息爆炸的时代&#xff0c;我们经常遇到这样的困境&#xff1a;找到一篇价值极高的深度报道&#xff0c;却被"订阅后阅读全文"的弹窗拦住去路&#xff1b;发现一份关键研究报告&#xff0c;却被告知"免费…...

ClearerVoice-Studio功能全解析:语音增强、分离、提取,哪个最适合你?

ClearerVoice-Studio功能全解析&#xff1a;语音增强、分离、提取&#xff0c;哪个最适合你&#xff1f; 1. 语音处理技术现状与需求 在数字时代&#xff0c;清晰的语音已成为沟通的基础需求。无论是远程会议、内容创作还是多媒体制作&#xff0c;我们经常面临以下挑战&#…...

用 Microsoft Agent Framework 构建 SubAgent(Multi-Agent)伎

本文能帮你解决什么&#xff1f; 1. 搞懂FastAPI异步&#xff08;async/await&#xff09;到底在什么场景下能真正提升性能。 2. 掌握在FastAPI中正确使用多线程处理CPU密集型任务的方法。 3. 避开常见的坑&#xff08;比如阻塞操作、数据库连接池耗尽、GIL限制&#xff09;。 …...