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

news2024/9/25 13:14:03

目录

  • 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配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/822479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL 的解析器以及 MySQL8.0 做出的改进 | StoneDB技术分享 #2

设计&#xff1a;小艾 审核&#xff1a;丁奇 编辑&#xff1a;宇亭 作者&#xff1a;柳湛宇&#xff08;花名&#xff1a;乌淄&#xff09; 浙江大学-软件工程-在读硕士、StoneDB 内核研发实习生 一、MySQL 的解析器 MySQL 所使用的解析器&#xff08;即 Lexer 和 Parser …

⛳ Java多线程 一,线程基础

线程基础 ⛳ Java多线程 一&#xff0c;线程基础&#x1f43e; 一&#xff0c;线程基础&#x1f4ad; 1.1&#xff0c;什么是程序&#xff0c;进程&#xff0c;线程&#x1f3ed; 1.2&#xff0c;什么是并行和并发&#x1f463; 1.3&#xff0c;线程使用的场景&#x1f3a8; 1.…

Nginx 15分钟入门

1、反向代理和负载均衡 Nginx 反向代理 负载均衡 网站初期用户量较少的时候&#xff0c;一台服务器就够用&#xff0c;但是当大量用户注册&#xff0c;那么显然一台机器就不够了。如下图&#xff0c;我们把同一个项目部署在3台服务器上。那么问题又来了&#xff0c;用户A的请…

连锁门店新零售管理系统服务商,提供新零售商城一体化解决方案|亿发

新零售时代&#xff0c;客户需求和购物方式正在发生翻天覆地的变化&#xff0c;数字化运营服务成为连锁门店增强竞争力的有效工具。那么&#xff0c;我们该如何借助数字化力量&#xff0c;升级连锁门店的新零售运营服务&#xff0c;迎接未来的商业挑战呢&#xff1f;一、智慧新…

emWin - BMP图片显示

BmpCvt.exe 用途 利用BMP图片&#xff0c;进行GUI显示&#xff1b;ICON等图标都是小BMP图片&#xff0c;核心是将BMP图片&#xff0c;转成emWin支持的方式&#xff0c;最终显示到TFT屏上 使用BmpCvt.exe工具&#xff0c;将各个图片转成相应的C文件. emWin有关的工具&#xff…

P4780 Phi的反函数

题目 思路 φ(x)n 当指数均为1时n最小 证明&#xff1a;容斥原理 代码 #include<bits/stdc.h> using namespace std; #define int long long const int maxn1e9; int ansINT_MAX,n; bool f; map<int,bool> mp; bool is_prime(int n){if(n<1) return false;fo…

Web功能测试之表单、搜索测试

初入职场接触功能测试老是碰到以下情况不知道怎么写测试用例&#xff1a; 一个界面很多搜索条件怎么写用例&#xff1f; 下拉框测试如何考虑测试点&#xff1f; 上传要考虑哪些验证点&#xff1f;...... 所以这篇主要是整理关于web测试之表单、搜索测试的相关要点。 一、表…

个性定义轻松掌控,更适合PC玩家的游戏鼠标,雷柏VT350S体验

喜欢玩PC游戏的玩家都知道&#xff0c;一款好的鼠标可以在游戏中更加游刃有余&#xff0c;甚至扭转乾坤。但是&#xff0c;有线鼠标总是让人觉得不够灵活&#xff0c;无线鼠标又担心延迟和续航。那么&#xff0c;有没有一款无线鼠标既能满足游戏需求&#xff0c;操作又能随心所…

话费充值系话费直充系统源码支付快充慢充系统运营商接口

话费充值系话费直充系统源码支付快充慢充系统运营商接口

小程序学习(五):WXSS模板语法

1.什么是WXSS WXSS是一套样式语言,用于美化WXML的组件样式,类似于网页开发中的CSS 2.WXSS和CSS的关系 WXSS模板样式-rpx 3.什么是rpx尺寸单位 4.rpx的实现原理 5.rpx与px之间的单位换算* WXSS模板样式-样式导入 6.什么是样式导入 使用WXSS提供的import语法,可以导入外联的样式…

Spring-BeanFactory

Spring Spring是整个Java体系最核心的框架&#xff0c;没有之一。 核心类图结构 ApplicationContext ApplicationEventPublisher&#xff1a;提供了一种机制&#xff0c;用于通知应用程序中感兴趣的部分有关其执行过程中发生的特定事件。ListableBeanFactory&#xff1a;是S…

P3855 [TJOI2008] Binary Land(BFS)(内附封面)

[TJOI2008] Binary Land 题目背景 Binary Land是一款任天堂红白机上的经典游戏&#xff0c;讲述的是两只相爱的企鹅Gurin和Malon的故事。两只企鹅在一个封闭的迷宫中&#xff0c;你可以控制他们向上下左右四个方向移动。但是他们的移动有一个奇怪的规则&#xff0c;即如果你按…

cloudstack之basic network

本章则主要尝试basic network模式的使用。 基础环境搭建见cloudstack测试环境搭建 1、概念介绍 cloudstack的网络模式主要分为两种&#xff1a; basic network&#xff1a;一个zone中仅有一个guest network来承载客户虚拟机的流量&#xff0c;可以理解为一个简单的二层网络。…

【EI/SCOPUS征稿】2023年算法、图像处理与机器视觉国际学术会议(AIPMV2023)

2023年算法、图像处理与机器视觉国际学术会议&#xff08;AIPMV2023&#xff09; 2023 International Conference on Algorithm, Image Processing and Machine Vision&#xff08;AIPMV2023&#xff09; 2023年算法、图像处理与机器视觉国际学术会议&#xff08;AIPMV2023&am…

Django学习记录:使用ORM操作MySQL数据库并完成数据的增删改查

Django学习记录&#xff1a;使用ORM操作MySQL数据库并完成数据的增删改查 数据库操作 MySQL数据库pymysql Django开发操作数据库更简单&#xff0c;内部提供了ORM框架。 安装第三方模块 pip install mysqlclientORM可以做的事&#xff1a; 1、创建、修改、删除数据库中的…

maven如何打包你会吗?

1.新建一个maven项目&#xff0c;在main/java中建立Main类 public class Main {public static void main(String[] args) {System.out.println("hello java ...");} } 2.添加依赖&#xff0c;使其成为可执行包 <build><plugins><!--打包成为可执行包-…

uniapp app端 echarts 设置tooltip的formatter不生效问题以及解决办法

需求一&#xff1a; y轴数据处理不同数据增加不同单位 需求二&#xff1a; 自定义图表悬浮显示的内容 需求一&#xff1a;实现方式 在yAxis里面添加formatter yAxis: [{//y轴显示value的设置axisLabel: {show: true,formatter (value, index) > {var valueif (value > 1…

Uboot实现PSCI

快速链接: . &#x1f449;&#x1f449;&#x1f449; 【目录】ARM/TEE/ATF/SOC微信群问题记录 &#x1f448;&#x1f448;&#x1f448; 付费专栏-付费课程 【购买须知】: 问 &#xff1a; 8核的A72 多核启动 目前用的spin-table的方式&#xff0c;想尝试一下psci方式&…

Redis事务、管道

一.Redis事务 1.概念 可以一次执行多个命令&#xff0c;本质是一组命令的集合。一个事务中的所有命令都会序列化&#xff0c;按顺序地串行化执行而不会被其它命令插入&#xff0c;不许加塞 2.Redis事务与数据库事物的区别 3.常用命令 4.事务执行情况 正常执行 即整个过程…