nodejs前端项目的CI/CD实现(三)制作自定义的jenkins镜像

本文详细介绍了如何通过Dockerfile创建自定义Jenkins镜像,包括基于官方镜像扩展、安装基础工具、配置npm镜像源,以及使用容器方式制作镜像。最后提到制作后的镜像管理和部署项目的后续步骤。
摘要由CSDN通过智能技术生成

一、总体设计

在这里插入图片描述

二、制作自定义镜像的两种方法

1、基于Dockerfile(推荐)

# 使用官方 Jenkins 镜像
FROM jenkins/jenkins:2.323

# 切换到 root 用户
USER root

# 安装基础工具和依赖
RUN apt-get update \
    && apt-get install -y curl wget gnupg rsync build-essential python3 zip unzip \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# 安装 Node.js 和 npm
RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | gpg --dearmor -o /usr/share/keyrings/nodesource.gpg \
    && echo 'deb [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x focal main' > /etc/apt/sources.list.d/nodesource.list \
    && echo 'deb-src [signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_16.x focal main' >> /etc/apt/sources.list.d/nodesource.list \
    && apt-get update \
    && apt-get install -y nodejs \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# 配置 npm 使用淘宝镜像
RUN echo "\
registry=https://registry.npm.taobao.org/ \n\
proxy=null \n\
strict-ssl=false \n\
sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ \
" > /root/.npmrc

# 安装 Yarn
RUN npm install -g yarn

# 安装 lerna
RUN npm install -g lerna

# 切换回 Jenkins 用户
USER jenkins

对应上图左侧的镜像company/xx-jenkins。

docker build -t company/xx-jenkins:2.323 . 

# 推送到你的私库
# 略

配置 npm 使用淘宝镜像,可以让你安装yarn等会更快速。

2、基于容器

docker ps -a 找到你原先的jenkins容器ID。
然后docker commit {container Id} {新的镜像名称}
比如 docker commit d10971774343 company/xx-jenkins-copy:2.323

在这里插入图片描述
官方jenkins是443MB,基于容器制作的镜像大小变成了629MB,这是因为多安装了Nodejs等许多软件。

  • docker images

在这里插入图片描述
制作后的镜像,就跟上面使用Dockerfile一样使用,或推送到私库,或直接在本机运行。

不过,这种制作自定义镜像,使得镜像变成了黑箱。

三、总结

好了,关于制作自定义的jenkins镜像,我这里摘抄得比较详细,就不一一赘述了。

下文,我们将讲解rsync工具,具体是如何部署一个项目。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Node.js是一个基于Chrome V8引擎的JavaScript运行环境,可用于构建高性能的网络应用程序。Node.js前端项目源码主要是指使用Node.js作为后端服务器,配合前端技术(如HTML、CSS、JavaScript)构建的项目源代码。 Node.js前端项目源码通常包括以下几个方面: 1. 后端逻辑:Node.js可以用于编写后端逻辑,处理客户端请求、与数据库交互、进行业务逻辑处理等。在项目源码中会包含后端逻辑的代码,如路由定义、数据处理、用户认证等。 2. 前端资源管理:Node.js也可以用作静态资源服务器,托管前端静态资源(如HTML、CSS、JavaScript文件)。前端项目源码中会包含前端资源的配置和管理,如页面模板的引入、静态资源的打包压缩等。 3. 数据库交互:很多Node.js前端项目会涉及数据库的操作,比如MySQL、MongoDB等。在项目源码中会包含数据库连接、数据查询、数据修改等相关代码。 4. 异步处理:Node.js以事件驱动的方式进行处理,对于异步操作的处理方式会在项目源码中有所体现,如回调函数、Promise、async/await等。 5. 接口定义:Node.js前端项目通常会定义接口供前端调用,项目源码中会包含接口定义和实现部分。 总的来说,Node.js前端项目源码是一种综合利用Node.js后端能力和前端技术进行项目开发的代码,它涵盖了项目的整体架构、后端逻辑、前端资源管理、数据库交互和接口定义等方面的内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天草二十六_简村人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值