window上搭建npm私仓(verdaccio)

2024-02-21 23:58

本文主要是介绍window上搭建npm私仓(verdaccio),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本来是用sinopia搭建的私服,但是sinopia搭建会出现各种各样的问题,并且sinopia的作者两年前就已经停止了对sinopia的维护和升级,对于新的问题也没人处理。不过有一群人又出了一个sinopia的fork,也就是sinopia的分支verdaccio ,verdaccio 是正在维护的,我用sinopia搭的时候填的一堆坑在verdaccio 根本不存在,并记录一下搭建过程。

1、首先电脑上要安装nodejs和npm,一般npm是随着nodejs一起安装的,具体的nodejs安装网上有很多安装方法,打开dos窗口执行如下代码:

npm install -g verdaccio --unsafe-perm

如下图所示:

2、安装完成后如果没有提示错误则表示安装成功,如下图所示:

3、然后修改配置文件,找到C:\Users\Administrator\AppData\Roaming\verdaccio\config.yaml,如果没有该文件则需要启动一次才会自动创建,如下图所示:

4、然后在配置文件的末尾添加listen: 0.0.0.0:4873,配置此选项则是允许任何外部的所有IP都可以访问到此服务,如下图所示:

5、配置npm仓库的位置,找一个位置新建一个目录,如下图所示:

6、找到配置文件的storage选项,然后把仓库的位置填写进去,注意是用斜线,而不是反斜线,如下图所示:

7、然后重新启动verdaccio,如下图所示:

8、然后在另外一台电脑即可打开,如下图所示:

9、安装nrm用来管理npm源,添加和切换很方便,使用npm install -g nrm安装,如下图所示:

10、安装成功界面如下图所示:

11、使用nrm ls来查看目前npm有哪些源可以使用,如下图所示:

12、由于电脑的Ip是自动获取的,当电脑重启IP有可能会改变,因此最好需要手动设置一个IP,然后使用nrm add localnpm http://192.168.1.250:4873添加到npm源中,如下图所示:

14、然后通过nrm ls来查看有哪些源,带*号的表示目前正在使用的源,如下图所示:

15、然后通过nrm use localnpm来切换源,如下图所示,我们就切换到我们刚刚添加的源了:

16、然后通过npm adduser来新建一个用户,此时会出现错误,如下图所示:

17、出现错误的原因是我们使用的源服务没有启动,这也就表名我们添加的npm源起作用了,在使用npm连接的是我们刚才新添加的那个源,然后启动服务,如下图所示:

18、然后在次执行npm adduser即可,输入用户名,密码,邮箱即可,如下图所示:

19、然后新建一个项目,使用npm init即可初始化一个项目,如下图所示:

20、然后进入到该项目中,随便新建一个js文件,如下图所示:

21、首先使用npm login进行登录,同样输入用户名,密码,邮箱验证,如下图所示:

22、然后执行npm publish,如下图所示:

23、刷新网页,即可查看到上传的包,如下图所示:

24、我们使用ng new hellowold新建一个angular项目,如下图所示:

25、此时就会从本地源来所需要的包,如果本地源没有会向外网去寻找下载,配置外网的npm是找到config.yaml配置文件找到uplinks,填写上一级npm仓库的地址,如下图所示:

26、然后从上一级npm下载对应的包到本地仓库,以后再下载就会直接从本地仓库下载,而不需要在从外部服务器下载,如果版本号升级,而本地没有则会自动从外部网络下载的,如下图所示:

27、verdaccio显示的请求信息如下图所示:

28、此时就新建了一个hellowold的angular工程,如下图所示:

29、此时可以查看工程的node_modules中没有windemo,如下图所示:

30、然后打开package.json,添加windemo以及版本号,如下图所示:

31、运行npm install,如下图所示:

32、此时在node_modules即可下载完成,如下图所示:

到此说明verdaccio完全可以使用npm来上传下载,不用关心是从哪里去下载的,最终要的是我们自己的项目只上传到我们的内部服务器,保证了代码不会外泄。

这篇关于window上搭建npm私仓(verdaccio)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/733495

相关文章

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

使用DeepSeek搭建个人知识库(在笔记本电脑上)

《使用DeepSeek搭建个人知识库(在笔记本电脑上)》本文介绍了如何在笔记本电脑上使用DeepSeek和开源工具搭建个人知识库,通过安装DeepSeek和RAGFlow,并使用CherryStudi... 目录部署环境软件清单安装DeepSeek安装Cherry Studio安装RAGFlow设置知识库总

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

Window Server2016加入AD域的方法步骤

《WindowServer2016加入AD域的方法步骤》:本文主要介绍WindowServer2016加入AD域的方法步骤,包括配置DNS、检测ping通、更改计算机域、输入账号密码、重启服务... 目录一、 准备条件二、配置ServerB加入ServerA的AD域(test.ly)三、查看加入AD域后的变