部署jenkins(使用华为云war包,手动制作jenkins镜像)

news2024/11/24 0:17:08

部署jenkins(使用华为云war包,手动制作jenkins镜像)

  • 环境准备
  • 制作jenkins镜像
  • 启动jenkins服务
  • 进入jenkins登录页 配置jenkins用户
  • 配置jenkins代理通道

环境准备

1、JDK镜像准备
	docker pull openjdk:8-jdk-oracle
2、jenkins的war包准备 
	https://mirrors.huaweicloud.com/jenkins/war/
	我下载的2.291版本,也可以下载最新的版本

制作jenkins镜像

1、编写Dockerfile

FROM openjdk:8-jdk-oracle
ENV JAVA_HOME /java
ENV PATH $PATH:$JAVA_HOME/bin
ENV CLASSPATH .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN apk update
RUN apk add --no-cache make gcc libc-dev bash tree tzdata \
&& cp -r -f /usr/share/zoneinfo/Hongkong /etc/localtime
WORKDIR /jenkins
COPY jenkins.war ./
ENTRYPOINT ["java","-Dhudson.model.DownloadService.noSignatureCheck=true","-jar","jenkins.war","--httpPort=8080"]

2、制作镜像(将war包和Dockerfile放在同一个文件夹下)

进入Dockerfile文件目录,执行:docker build -t jenkins:2.291 .

启动jenkins服务

1、编写docker-compose.yml文件

jenkins:
    image: jenkins:2.291
    volumes:
        - /home/cjd/jenkins/data:/var/jenkins_home
    ports:
        - "8098:8080"
    expose:
        - "8080"
        - "50000"
    privileged: true
    user: root
    restart: always
    container_name: jenkins
    environment:
        JAVA_OPTS: '-Djava.util.logging.config.file=/var/jenkins_home/log.properties'
        JENKINS_HOME: '/var/jenkins_home'

2、启动服务

	docker-compose up -d 

进入jenkins登录页 配置jenkins用户

1、获取初始密码

docker exec -it jenkins bash
cat /var/jenkins_home/secrets/initialAdminPassword

2、第一次选择不安装插件直接进入jenkins

3、添加jenkins用户

配置jenkins代理通道

1、关闭jenkins服务

docker stop jenkins

2、UpdateCenter通道

进入jenkins挂载目录 data下

vim hudson.model.UpdateCenter.xml	

在这里插入图片描述

将url替换成对应版本的update center
版本选择地址:https://mirrors.huaweicloud.com/jenkins/updates/dynamic-2.291/update-center.json

3、替换default.json

进入jenkisn数据挂载目录data, 然后进入updates文件夹
执行全局替换原有的jenkins插件安装源

sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.huaweicloud.com\/jenkins/g' default.json
sed -i 's/http:\/\/www.google.com/http:\/\/www.baidu.com/g' default.json

4、重新启动jenkins服务

docker start jenkins

至此jenkins环境已经安装ok了

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

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

相关文章

adb shell dumpsys SurfaceFlinger

adb shell dumpsys SurfaceFlinger adb shell dumpsys SurfaceFlinger分析Android 系统图层 此命令输出的内容不较多,可以将输出内容重定向到一个文件中 adb shell dumpsys SurfaceFlinger > ./Downloads/surface.txt如下的内容,过滤HWC layers 另外…

第六章 NVMe 介绍

6.4 寻址双雄:PRP 和 SGL 1. 主机往 SSD 写入用户数据 2. 主机读取 SSD 上的用户数据 在上面两个过程中,主机在与 SSD 的数据传输过程中,主机是被动的一方,SSD 是主动的一方。即,主机需要数据(读数据&#…

JVM重点整理

一、虚拟机架构图 二、类加载过程 类加载器的作用:负责把class文件加载到内存中 类加载过程: 加载: 通过类的全限定名获取此类的二进制字节流文件的编码结构---->运行时的内存结构内存中生成一个class对象 链接: 验证&#x…

LangChain大型语言模型(LLM)应用开发(五):评估

LangChain是一个基于大语言模型(如ChatGPT)用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口,可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

【状态估计】基于UKF法、AUKF法、EUKF法电力系统三相状态估计研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

【PHP面试题40】能够使HTML和PHP分离开使用的模板技术有哪些

文章目录 一、前言二、模板技术的好处三、常用的模板技术3.1 PHP模板引擎3.2 前端模板引擎3.3 前后端分离技术 四、Smarty模板使用演示4.1 在项目中引入Smarty模板引擎的文件4.2 引入Smarty.class.php文件4.3 创建一个Smarty对象4.4 变量定义4.5 创建一个Smarty模板文件4.6 绑定…

【C语言】念数字

问题描述: 输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。 输入格式: 输入在一行中给出一个整数, 如:1234。 提示:整数包括负数、零和正数。 输出格式: 在一…

【C语言】2-C 语言程序构建过程以及 C 语言的程序结构

1. 程序构建过程 1.1 什么是计算机语言 1.1.1 机器语言 计算机只能识别二进制,也就是说只能识别由 0 和 1 组成的指令。在计算机发展的初期,一般计算机的指令长度为 16,即用 16 个二进制数(0 或 1)组成一条指令,16 个 0 和 1 可以组成各钟排列组合。例如用 0011 1100…

Cyclo(RRRRRRR) , NP213 TFA,多肽合成,碱性侧链氨基酸

资料编辑|陕西新研博美生物科技有限公司小编MISSwu​ -----产品描述---- 环肽试剂Cyclo(RRRRRRR),属于7个精氨酸的多肽合成,碱性侧链氨基酸这些保护基在合成过程中稳定,无副反应,合成结束后可以完全定量的脱除。 -----试剂信息--…

基于C语言的学生成绩管理系统

(꒪ꇴ꒪ ),hello我是祐言博客主页:C语言基础,Linux基础,软件配置领域博主🌍快上🚘,一起学习!送给读者的一句鸡汤🤔:集中起来的意志可以击穿顽石!作者水平很有限,如果发现错误&#x…

jmeter命令行运行(非GUI形式)参数详解

目录 一、JMete执行方式 二、JMete非GUI运行优点 三、jmeter非GU运行参数 四、jmeter非GUI运行命令 4.1非GUI基本命令格式: 4.2非GUI并生成html报告基本命令格式 总结: 一、JMete执行方式 正常情况下我们会以有页面的方式打开jmeter编写接口&…

lvs使用

1.前言 LVS(Linux Virtual Server)是一个基于 Linux 内核的负载均衡器,用于分发网络流量和将请求转发给后端服务器。LVS 提供了多种负载均衡算法和转发模式,以满足不同场景和需求的负载均衡需求 2.lvs功能 LVS 提供了三种负载均…

React在Dva项目中创建并引用页面局部组件

这篇文章我们演示Dva中编写组件的方式 官方这里也特意强调了UI这个关键词 跟多是作为我们界面元素的组件 而不是页面路由 我们要单独做路由的组件肯定还是直接放在我们Dva项目的src下的routes目录下就好了 然后 我们看 项目 src下有一个 components 目录 一般我们做什么前端项…

连接区块链节点的 JavaScript 库 web3.js

文章目录 前言web3.js 介绍web3.js安装web3.js库模块介绍连接区块链节点向区块链网络发送数据查询区块链网络数据 前言 通过前面的文章我们可以知道基于区块链开发一个DApp,而DApp结合了智能合约和用户界面(客户端),那客户端是如…

TCP三次握手、数据传输与四次挥手

一、建立TCP连接 —— 三次握手 (1)客户端向服务端发送一个携带初始序列号的SYN包。 (2)服务端收到后将其加入到半连接队列,然后向客户端回复携带初始序列号的SYNACK包。 (3)客户端收到后再向服…

ModelAttribute用法详解

目录 官方解释 例子 使用场景1 使用场景2 场景3 官方解释 首先看一下官方文档上该注解的解释: 可以看到ModelAttribute可以用在参数上,也可以用在方法上: Can be used to expose command objects to a web view, using specific attribu…

ceph--cephFS的使用

ceph分布式存储—cephFS的使用 1、cephfs的概念 ceph FS 即 ceph filesystem,可以实现文件系统共享功能,客户端通过 ceph 协议挂载并使 用 ceph 集群作为数据存储服务器。 Ceph FS 需要运行 Meta Data Services(MDS)服务,其守护进程为 ceph-mds&#x…

【Unity面试篇】Unity 面试题总结甄选 |Unity渲染Shader相关 | ❤️持续更新❤️

前言 关于Unity面试题相关的所有知识点:🐱‍🏍2023年Unity面试题大全,共十万字面试题总结【收藏一篇足够面试,持续更新】为了方便大家可以重点复习某个模块,所以将各方面的知识点进行了拆分并更新整理了新…

怎样优雅地增删查改(六):按任意字段关键字查询

文章目录 实现应用测试 实现 定义按任意字段关键字查询过滤器(IKeywordOrientedFilter)接口,查询实体列表Dto若实现该接口,将筛选指定的目标字段(TargetFields)包含指定的关键字(Keyword&#…

软件开发的六大设计原则

我们常说软件开发要尽量具有良好的可扩展性,做到高内聚低耦合。那么究竟该如何实现呢?在面向对象软件设计领域有一系列大家所认可的设计原则,依据这些原则来设计软件,就可以让软件有很好的可扩展性,其中最重要的一条原…