搭建npm私有镜像仓库,天下苦于npm build久矣

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 前言 当你的研发团队越来越大,或是你无法忍受node超慢的构建时你可以考虑继续读下去,给大家推荐一个基于Verdaccio相对较完整的解决方案。 由于环境的原因,我们直接去 npmjs.org 下载就不要考虑了,可以将npm config set registry=https://registry.npm.taobao.org 可以缓解一部分, 但是如果你有些自己公司定制的npm包如何在公司内分享呢,这个时候你就需要一个npm私服了. Verdaccio 是什么 Verdaccio 是一个简单的零配置的node.js轻量私有的npm代理仓库。

前言

当你的研发团队越来越大,或是你无法忍受node超慢的构建时你可以考虑继续读下去,给大家推荐一个基于Verdaccio相对较完整的解决方案。

由于环境的原因,我们直接去 npmjs.org 下载就不要考虑了,可以将npm config set registry=https://registry.npm.taobao.org 可以缓解一部分, 但是如果你有些自己公司定制的npm包如何在公司内分享呢,这个时候你就需要一个npm私服了.

Verdaccio 是什么

Verdaccio 是一个简单的零配置的node.js轻量私有的npm代理仓库。

verdaccion能做什么

1. 缓存npmjs.org仓库

npm安装缓慢大家都知道,可以使用它来减少延迟(大概“慢”的npmjs.org每个软件包/版本仅连接一次)并提供有限的故障转移(如果使用npmjs.org挂掉了,我们依然可以通过缓存获取到相应的包)

2. 私有仓库

如果您想在公司中使用npm软件包系统而又不将所有代码发送给公众,请使用私有软件包,就像使用公共软件包一样容易。

3. 链接多个仓库

如果您在组织中使用多个npm仓库,并且需要在一个项目中从多个来源获取软件包,则可以利用Verdaccio的上行链路功能,将多个仓库链接起来并从一个端点获取。

4. 覆盖公共软件包

如果要使用某个第三方软件包的修改版本(例如,您发现了一个错误,但维护者尚未接受请求请求),则可以使用相同的名称在本地发布该版本。 详细请看这里

5. 端到端测试

事实证明,Verdaccio是一个轻量级仓库,可以在几秒钟内启动,对于任何CI来说都足够快。 许多开放源代码项目都使用verdaccio进行端到端测试.

_注_: 功能3、4、5需要你自己去探索。

安装

_注_: Verdaccio 支持多种安装方式,甚至包含charts包

前置条件

1. Node版本

  • verdaccio@3.x Node v6.12 是最低的版本.
  • verdaccio@4.0.0-alpha.x or verdaccio@4.x Node 8.x (LTS "Carbon") 是最低的版本.

2. npm >=4.x or yarn

官方强烈建议使用最新的node包管理客户端 > npm@5.x | yarn@1.x | pnpm@2.x

3. Web界面 支持 Chrome, Firefox, Edge, and IE11 browsers.

Docker-compose方式部署

可以直接参考我们归档的版本传送门

__20191129161249

是时候舍弃cnpm了,希望你可以享受verdaccio.

更多

参考链接

  1. https://medium.com/engenharia-noalvo/ways-to-have-your-private-npm-registry-and-a-final-diy-solution-eed001a88e74
  2. https://verdaccio.org/docs/en/what-is-verdaccio

900_500__2019_09_06

相关实践学习
通过workbench远程登录ECS,快速搭建Docker环境
本教程指导用户体验通过workbench远程登录ECS,完成搭建Docker环境的快速搭建,并使用Docker部署一个Nginx服务。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
2月前
|
资源调度 JavaScript
nodeJS 的 npm 设置国内高速镜像之淘宝镜像的方法
nodeJS 的 npm 设置国内高速镜像之淘宝镜像的方法
1318 2
|
3月前
|
资源调度
#发布npm包遇到错误,因为用了淘宝镜像地址的原因的解决方法-403 403 Forbidden - PUT https://registry.npmmirror.com/-/user/org.cou
#发布npm包遇到错误,因为用了淘宝镜像地址的原因的解决方法-403 403 Forbidden - PUT https://registry.npmmirror.com/-/user/org.cou
152 0
|
4月前
npm 切换镜像后,npm i 安装依然卡,需要好久才完成
npm 切换镜像后,npm i 安装依然卡,需要好久才完成
142 0
|
7月前
|
JavaScript
Node.js npm设置淘宝npm镜像
Node.js npm设置淘宝npm镜像
1144 0
|
2月前
淘宝镜像registry.npm.taobao.org在npm时提示 certificate has expired(证书已过期)的 解决方法
淘宝镜像registry.npm.taobao.org在npm时提示 certificate has expired(证书已过期)的 解决方法
665 0
|
2月前
|
自然语言处理 JavaScript Serverless
ModelScope问题之镜像无法安装nodejs和npm如何解决
本合集将提供ModelScope安装步骤、配置要求和环境准备,以便用户顺利启动ModelScope进行模型开发和测试。
42 0
|
7月前
|
JavaScript
npm的安装与镜像设置
npm的安装与镜像设置
346 1
|
4月前
|
JavaScript
npm run build ERROR in static_js_vendor.e475838be75c71f87b37.js from UglifyJs
npm run build ERROR in static_js_vendor.e475838be75c71f87b37.js from UglifyJs
|
10月前
|
存储 缓存 资源调度
关于npm镜像迁移导致的服务异常
关于npm镜像迁移导致的服务异常
217 0
|
5月前
vue-element-admin里面使用npm run build:prod打包步骤
vue-element-admin里面使用npm run build:prod打包步骤
96 1

推荐镜像

更多