七、docker-compose方式运行Jenkins,更新Jenkins版本,添加npm node环境

news2024/9/25 11:19:40

docker-compose方式运行Jenkins,更新Jenkins版本,添加npm node环境

一、docker-compose方式安装运行Jenkins 中发现Jenkins版本有点老,没有node环境,本节来说下更新jenkins 及添加构建前端的node环境。

1. 准备好docker-compose.yml【已更新好可以直接用】

version: '3.1'
services:
  jenkins:
    image: jenkins/jenkins:2.361.3
    volumes:
      - /home/jenkins/war/jenkins.war:/usr/share/jenkins/jenkins.war #更新了最新jenkins.war
      - /data/jenkins/:/var/jenkins_home  #jenkins_home主目录
      - /usr/local/maven/apache-maven-3.9.2/:/usr/local/maven/apache-maven-3.9.2 #maven环境主目录
      - /usr/local/node/node/:/usr/local/node/node  #node环境主目录
      - /home/jenkins/war/profile:/etc/profile  #环境变量,可有可无
      - /var/run/docker.sock:/var/run/docker.sock #容器中执行docker命令,宿主机能准确响应
      - /usr/bin/docker:/usr/bin/docker  #容器中执行docker命令,宿主机能准确响应
      - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 #容器中执行docker命令,宿主机能准确响应
    ports:
      - "8080: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'

1. 准备好最新版本的Jenkins.war 包,更新最新的war包

容器中jenkins.war存放的地址/usr/share/jenkins/jenkins.war,将容器中的包和外面的新版本包,数据卷路径映射,即就是更新了最新的war包

docker-compose.yml 中数据卷中添加下面条
- /home/jenkins/war/jenkins.war:/usr/share/jenkins/jenkins.war

在这里插入图片描述

2. 准备好node环境包

将容器中的node环境包和外面的node环境包,数据卷路径映射

在这里插入图片描述

docker-compose.yml 中数据卷中添加下面这条
- /usr/local/node/node/:/usr/local/node/node  #node环境主目录

3. 卸载Jenkins容器,重新创建

docker rm -f jenkins #卸载原来Jenkins容器
vim docker-compose.yml #编辑好上面的node 数据卷和Jenkins.war包数据卷
docker-compose up -d  #创建新的Jenkins容器
#下面两只至关重要,创建npm和node软连接
docker-compose exec jenkins ln -sf /usr/local/node/node/bin/npm /usr/local/bin/npm
docker-compose exec jenkins ln -sf /usr/local/node/node/bin/node /usr/local/bin/node
#这个完成后,Jenkins 版本更新成功,node环境添加成功
[root@mojin node]# docker rm -f jenkins 
jenkins
[root@mojin node]# cd /home/jenkins/
[root@mojin jenkins]# ls
docker-compose.yml  docker-compose.yml_bak  profile_bak  war
[root@mojin jenkins]# vim docker-compose.yml
[root@mojin jenkins]# docker-compose up -d
Creating jenkins ... done
[root@mojin jenkins]# docker-compose exec jenkins ln -sf /usr/local/node/node/bin/npm /usr/local/bin/npm
[root@mojin jenkins]# docker-compose exec jenkins ln -sf /usr/local/node/node/bin/node /usr/local/bin/node
[root@mojin jenkins]# 

这个完成后,Jenkins 版本更新成功,node环境添加成功

4. 验证Jenkins 版本和node环境

检查node环境
在这里插入图片描述
检查Jenkins.war包
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

算法刷题-双指针-二分法

27. 移除元素 力扣题目链接 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组。 元素的顺序可以改变。你不需…

XSS数据接收平台——蓝莲花(BlueLotus)

文章目录 一、前言二、安装三、使用1、我的JS创建一个模板2、使用创建的模板攻击3、打开攻击的目标(这里选择pikachu靶场的存储型XSS模块测试)4、查看返回的数据 一、前言 蓝莲花平台是清华大学曾经的蓝莲花战队搭建的平台,该平台用于接收xs…

【QQ界面展示-通知的发布和监听 Objective-C语言】

一、来,看看,我们先给大家介绍一下通知 1.那么,这个通知,我们就是要给大家介绍三个东西 1)一个是通知的发布:如何发布通知 2)一个是通知的监听:发布以后,如何监听通知 3)一个是通知的移除:注意,通知一定要怎么样,最后,移除, 2.当你监听了一个通知以后,当你…

【Proteus仿真】51单片机+8255A IO扩展例程

【Proteus仿真】51单片机+8255A IO扩展例程 📍相关参考:51单片机8255A扩展IO口🎬Proteus仿真演示: 📓8255A与51单片机连接 🌿51单片机的P0口作为数据总线使用,与8255A的D7~D0数据信号线进行连接,当P00 - P07不作为8255A 的A、B、C端口地址使用时,可以不接上拉电阻…

3.部署glance服务(镜像获取组件)

身份认证服务部署完毕之后,部署 glance 映像服务,映像服务可以帮助用户发现、注册、检索虚拟机镜像,就是说 启动实例的镜像是放在这里的 。 默认镜像存储目录为: /var/lib/glance/images/ controller节点 在安装和配置 glance …

lua的元表与元方法理解

元表 在 Lua 中,元表(metatable)是一种特殊的表,用于定义另一个表的行为。每个表都有一个关联的元表,通过元表可以重载表的各种操作,例如索引、新索引、相加等。在 Lua 中,元表的使用非常灵活&…

【Soft-prompt Tuning for Large Language Models to Evaluate Bias 论文略读】

Soft-prompt Tuning for Large Language Models to Evaluate Bias 论文略读 INFORMATIONAbstract1 Introduction2 Related work3 Methodology3.1 Experimental setup 4 Results5 Discussion & Conclusion总结A Fairness metricsB Hyperparmeter DetailsC DatasetsD Prompt …

Intellij IDEA设置“选中变量或方法”的背景颜色、字体颜色(Mark Occurrences)

背景 IDEA 中选中一个变量就会将所有的变量相关变量标出来,这样就很方便知道这个变量出现的地方。Eclipse里头把这个功能叫做 Mark Occurrences,IDEA 里不知道怎么称呼。 我们要解决的痛点就是提示不明显,如下图所示,Macbook这么…

RocketMQ一条消息从生产者到消费者的流程

目录 1. rocketmq 中的角色介绍 2. 一条消息从生产者到消费者的所有流程(简版) 3. 一条消息从生产者到消费者的所有流程 1. rocketmq 中的角色介绍 生产者 producer 生产、创造消息,会把消息发送到 broker 中消息代理服务 broker 负责消息…

小白怎么入门网络安全?看这篇就够啦!

由于我之前写了不少网络安全技术相关的故事文章,不少读者朋友知道我是从事网络安全相关的工作,于是经常有人在微信里问我: 我刚入门网络安全,该怎么学?要学哪些东西?有哪些方向?怎么选&#xff…

JVM参数配置位置+JVM参数详细配置+Visual GC 插件安装及使用,jvm分析

调优的目的是什么呢? 1.就是让系统更加的丝滑,让用户体验变得更好。 2.提升系统的性能,提高效率,充分利用jvm内存。 一.JVM参数配置位置 1.java.lang.OutOfMemoryError: Java heap space 解决方法,Java堆异常&#…

CSS基础学习--15 CSS布局 - Overflow

一、定义 CSS overflow 属性用于控制内容溢出元素框时显示的方式。 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>CSS基础学习-overflow</title> <style> #overflowTest {background: #4CAF50;color: w…

Spring基础知识(二)

目录 1.Spring Bean是什么 2.Spring提供的配置方式 3.Spring bean中的scope 4.Spring bean容器的生命周期 5.Spring的内部bean 6.Spring装配是什么 7.自动装配模式 8.自动装配的局限性 9.基于注解配置容器 10.如何启动注解装配 1.Spring Bean是什么 Spring官方文档对…

lua的用户数据的使用与c语言交互

什么是用户数据 在 Lua 中&#xff0c;用户数据&#xff08;userdata&#xff09;是一种特殊的数据类型&#xff0c;它可以用来表示外部的 C 或 C 对象&#xff0c;并将它们传递给 Lua 程序使用。用户数据是 Lua 与其他语言或系统进行交互的主要方式之一&#xff0c;它可以让 …

选择排序代码

时间复杂度O&#xff08;n&#xff09;

《离散数学》:特殊的图

〇、前言 这一节会重点讨论一下一些特殊的图&#xff0c;这些图会解决一些特殊的问题。 一、欧拉图 给定无向连通图 G&#xff0c;若存在一条路经过 G 中每边一次且仅一次&#xff0c;则该路为欧拉路。若存在一条回路经过 G 中每边一次且仅一次&#xff0c;则该回路称为欧拉…

LVM管理linux

1. lvm的应用场景及其弊端 应用场景&#xff1a; 随着公司的发展&#xff0c;数据增长较快&#xff0c;最初规划的磁盘容量不够用了 弊端&#xff1a; 数据不是直接存放在硬盘上&#xff0c;而是在硬盘的上面又虚拟出来一层逻辑卷存放数据&#xff0c;故而增加了磁盘数据恢复的…

Web3 将 MetaMask添加入谷歌浏览器 扩展程序中

Web3到现在理论这段是说的有点太多了 那么 我们先来看个东西 叫 MetaMask 这个在我们项目开发过程中需要使用 MetaMask是一个开源的以太坊的一个钱包 那么 钱包肯定就是用来管理数据资产的 MetaMask 是以一个浏览器插件形式存在的 它可以直接连接到以太坊的网络中来管理我们…

冒泡排序代码

时间复杂度O&#xff08;n&#xff09;

03_Linux设备树与设备树语法

目录 什么是设备树 DTS、DTB和DTC DTS语法 dtsi头文件 设备节点 标准属性 compatible属性 model属性 status属性 #address-cells和#size-cells属性 reg属性 ranges属性 name属性 device_type属性 根节点compatible属性 使用设备树之前设备匹配方法 使用设备树以…