如何为 nodejs 构建节点配置 npm 构建缓存?
为 Jenkins 实例的构建节点配置构建缓存后,Jenkins 流水线构建过程中,可复用下载的依赖包,缩短构建时间,有效提高流水线的构建效率、降低网络带宽消耗并实现对依赖项的控制。
本文将为您说明,如何为 Nodejs 构建节点配置 npm 构建缓存。
npm 简介
npm(Node Package Manager)是 JavaScript 的包管理工具,用于管理和分发 JavaScript 依赖项。
用作 Nodejs 构建节点的构建缓存后,可满足的场景如下:
-
在多人共同开发的项目中,构建缓存可以减少每个开发人员重复下载相同依赖的时间和网络带宽。
-
在 CI/CD 流水线中,构建缓存可以减少构建和部署的时间,提高整个开发流程的效率。
-
在未接入互联网的环境中,构建缓存可以帮助您在离线状态下构建项目。
-
在资源受限的环境中,构建缓存可以降低资源消耗,提高构建速度。
前提条件
-
平台上存在已部署的 Jenkins 实例。
-
如需使用 PVC(Persistent volume Claim)作为缓存,请提前在 Jenkins 实例所在的命名空间下准备好 PVC。
操作步骤
-
进入 平台管理 视图后,在左侧导航栏中,单击 工具链管理 > 实例管理。
-
单击 Jenkins 实例的名称。
-
在 构建节点 页签下,单击待配置缓存的 Nodejs 节点。
-
单击 更新构建节点。
-
添加 构建缓存,参考以下说明,配置相关参数。
存储类型 参数说明 注意事项 Host Path volume 主机路径: /root/.npm
缓存类型:自定义
缓存路径:例如:/root/.npm实际的存储位置是任务 Pod 运行时所在节点的路径。如果调度节点不固定,缓存无效,建议使用 Persistent volume Claim 类型的存储。 Persistent volume Claim 缓存类型: 自定义
缓存路径:例如:/root/.npm
表示选中的 PVC 会被挂载到任务运行时容器的/root/.npm目录。PVC 用于小文件读写时可能比直接从依赖仓库下载慢,因此,在使用 PVC 作为缓存时,必须确保存储系统具备足够的性能。 -
单击 更新。
验证缓存是否生效
-
切换至 DevOps 视图后,在左侧导航栏中,单击 CI/CD > Jenkins。
-
新建或更新包含 Nodejs 构建任务的流水线。
-
选择配置了构建缓存的 Nodejs 节点作为 构建节点。
-
在 Nodejs 构建任务的构建命令中,输入如下命令,配置缓存路径。
提示:需将命令中的 nodejs 构建缓存的缓存路径 需替换为上文中为 Nodejs 构建节点配置的 缓存路径。
npm set cache=<nodejs 构建缓存的缓存路径> -
执行流水线。
-
登录 Jenkins 实例组件的 Pod 所在节点,若上文中为 Nodejs 构建节点配置的 缓存路径 下已生成了缓存文件
_cacache表明构建缓存配置成功且已生效。