搭建本地npm私服

最近刚进了一家公司,需要做一个组件库的项目,我考虑到是公司私有的组件库,所以就不应该发布到npm上,而是将他发布到本地中,供同事下载,其次,你npm的下载是非常

大家好,今天来为大家解答搭建本地npm私服这个问题的一些问题点,包括也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~

2、包缓存在私服中,同事下载速度大大提高。

3.您可以根据需要配置发布和下载权限

开始

我们先安装nodeJs

我们可以从官方网站下载

https://nodejs.org/zh-cn/

然后我们安装verdaccio

Verdaccio 是一个简单的、零配置的本地私有npm 包代理注册表。 Verdaccio 开箱即用,拥有自己的小型数据库,可以代理其他注册中心(例如npmjs.org),并缓存下载的模块。

npm install -g verdaccio –unsafe-perm 启动verdaccio

韦尔达西奥看到了这个

就说明安装成功了。

接下来我们配置我们的npm 代理

可以直接用npm配置

npm setregistry http://your ip:post 当然你也可以安装nrm来管理它

nrm(npm 注册表管理器)是npm 的镜像源管理工具。有时候国外资源太慢了。您可以使用它在npm 源之间快速切换。

npm i nrm -gnrm add myip http://ip:portnrm 使用myip查看代理配置命令

npm config list 然后,我们配置verdaccio 配置文件。默认情况下,mac 放置在

/用户/用户/.config/verdaccio

该窗口应位于%node_global%\node_modules\verdaccio\bin\verdaccio 下

打开文件

我们来看一些常见的文件配置说明

storage:仓库保存的地址,发布时仓库保存的地址。 auth: htpasswd file: 账户密码的文件地址。它在初始化期间不存在。您可以指定需要手动创建。 max_users:默认为1000,即允许注册的用户数。当-1时,不允许用户通过npm adduser注册。但是,当为-1时,可以通过直接写入htpasswd文件的内容来添加用户。语法:用户名:{SHA}哈希加密字符=:autocreated 时间加密算法:SHA1哈希然后转换为Base64。只需输出uplinks:配置上游npm服务器,主要用于当请求的仓库不存在时,去上游服务器。拉。 packages:配置模块。 access获取下载权限,发布包发布权限。格式如下:scope: 权限:操作scope:有两种模式。一种是@/表示下属的某个项目,另一种是*匹配项目名称(名称在package.json中定义)。权限: l access: 表示哪种类型的用户可以安装匹配的项目(install) lpublish: 表示哪种类型的用户可以发布匹配的项目(publish) l proxy: 顾名思义,这里的值就是上行链路对应的名称。如果本地不存在,则允许去对应的地方。上行链路拾取。操作: l $all 表示每个人(注册或未注册)都可以执行相应的操作l $authenticated 表示只有经过验证的人(注册)才能执行相应的操作。请注意,任何人都可以注册帐户。 l $anonymous 表示只有匿名的人才能执行相应的操作(通常没用) l 或者可以指定我们之前配置的用户表htpasswd 对应的一个或多个用户,这样就可以明确指定哪些用户可以执行匹配操作。端口和主机名。 localhost:4873 #默认0.0.0.0:4873 #我主要在所有网卡监控端改这几个点。

修改npm上游依赖

修改npm的上游依赖

添加收听

搭建本地npm私服

access:表示哪种类型的用户可以安装匹配的项目(install),publish:表示哪种类型的用户可以发布匹配的项目(publish)。这两项根据实际需要进行调整。

修改后保存文件,然后执行命令使其生效。

verdaccio -c config.yaml 接下来我们在私服中创建用户后,就可以直接启动了

verdaccio,我们还使用pm2来保护进程。

pm2是一个进程管理工具。您可以使用它来管理节点进程并查看节点进程的状态。当然,它还支持性能监控、进程守护进程、负载均衡等功能。

npm install -g pm2 之后,我们启动pm2就可以使用了。即使关闭控制台,verdaccio也不会关闭。

pm2 start verdacciopm2 stop verdaccio 在窗口中,如果不起作用,可以尝试添加路径,例如:

停止pm2 stop which D:\nodejs\node_global\node_modules\verdaccio 查看日志pm2 show D:\nodejs\node_global\node_modules\verdaccio 以下是pm2 的常用命令:

接下来我们在私服中创建用户

npm adduser 根据提示填写即可

登录并查看当前用户

npm loginnpm who am i 发布前修改package.json中的版本号。否则,如果与库中的版本号相同,则不会发布:

然后将代码打包。这里我使用库模式进行打包。

‘lib’: ‘vue-cli-service build –dest lib –target lib –name 项目名称./src/packages/index.ts’

npm run lib,还可以配置要发布的文件:

配置位于package.json文件中,例如:

现在您可以发布它

npm 发布

发布成功

当你看到这个,就说明发布成功了。

这时候你就可以去私服观看了。

http://ip:4873

就可以看到刚刚发布的包了。

已发布的模块也可以删除

npm unpublish –force yourPackage 最后,如果别人要下载,必须和你在同一个局域网。当然在公司是没问题的,然后他们通过修改注册表就可以下载了。

用户评论

搭建本地npm私服
太易動情也是罪名

终于找到解决公司网络安全限制的办法了!搭建自家的npm镜像服务器确实提高了不少效率,不用再跟墙外搏斗,速度提升明显!

    有9位网友表示赞同!

搭建本地npm私服
醉红颜

我也是这样想的!以前每次npm install都要好几个小时,现在用私服直接下载速度飞快,真的太赞了!

    有5位网友表示赞同!

搭建本地npm私服
┲﹊怅惘。

搭建私服确实是个不错的方案,可以有效管理公司内部的依赖包版本,防止版本冲突,不过要配置起来还是有点麻烦啊…

    有20位网友表示赞同!

搭建本地npm私服
娇眉恨

我是使用国内的云服务商提供的npm镜像服务,维护省心又稳定,如果自己搭建还需要考虑性能和安全问题,不如交给他家弄吧。

    有5位网友表示赞同!

搭建本地npm私服
怀念·最初

分享下你的搭建经验吗?我也正在寻找解决方案避免公司网络限制带来的麻烦!

    有8位网友表示赞同!

搭建本地npm私服
冷青裳

其实私服配置并不难,只要掌握相关技术也不需要太复杂操作。我用的是Verdaccio 这个,轻量又好上手!

    有19位网友表示赞同!

搭建本地npm私服
等量代换

学习一下吧!以前一直没想试试搭建私服,现在公司项目越来越大,或许自己也搭建一个是个不错的选择。

    有5位网友表示赞同!

搭建本地npm私服
她的风骚姿势我学不来

注意安全啊!搭建私服如果配置不当很容易被黑客攻击…

    有13位网友表示赞同!

搭建本地npm私服
拽年很骚

我建议多了解一下安全的配置方式,比如HTTPS认证,用户权限控制等,才能确保私服的安全可靠。

    有5位网友表示赞同!

搭建本地npm私服
你是梦遥不可及

赞同!自己搭建虽然方便,但安全问题确实需要格外重视,毕竟公司很多资源都依赖这个服务器了。

    有15位网友表示赞同!

搭建本地npm私服
拥抱

学习一下搭建私服的流程,感觉还是挺有用的,可以提升团队效率。

    有13位网友表示赞同!

搭建本地npm私服
゛指尖的阳光丶

搭建一个本地npm私服确实能够解决了很多公司的网络限制问题,提高工作效率!

    有12位网友表示赞同!

搭建本地npm私服
身影

自己搭建私服需要一定的技术基础,对于程序员来说可以提升一些技能,不过新手可能还是比较难上手。

    有10位网友表示赞同!

搭建本地npm私服
微信名字

安装维护比较方便吗?我平时时间有限,担心无法妥善管理 。

    有9位网友表示赞同!

搭建本地npm私服
ー半忧伤

我之前也遇到了这个问题,建议选择轻量级的版本和完善的教程,容易上手还省心!

    有18位网友表示赞同!

搭建本地npm私服
有些人,只适合好奇~

搭建私服的好处确实可以体验到,但我还是更喜欢直接访问npm公共仓库,感觉更灵活方便。

    有15位网友表示赞同!

搭建本地npm私服
龙卷风卷走爱情

我觉得使用私服也有一些缺点,例如维护成本较高,需要定期更新维护和安全评估。

    有16位网友表示赞同!

搭建本地npm私服
刺心爱人i

对于小团队来说搭建一个自有私服的开销可能有点高,不如优先考虑其他优化方案,如果后续需求增加再考虑吧!

    有11位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/160656.html

(0)
小su's avatar小su
上一篇 2024年9月21日 上午1:41
下一篇 2024年9月21日 上午1:54

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注