NodeJS学习:搭建私有NPM
工具
- verdaccio
- nrm
- pm2
特点
verdaccio 的特点:
- 不同步拉取npm库,占据大量硬盘,没有硬盘被撑爆的问题;
- 安装配置极其简单,不需要数据库;
- 支持配置上游registry配置,拉取即缓存;
- 支持forever及pm2守护进程管理;
- 私有npm package 管理
- 支持 docker 等应用容器
verdaccio 是上一个 sinopia 的交叉分支。
安装 verdaccio
npm i verdaccio -g
安装好后,执行 verdaccio 即可以看到本地 NPM 的web管理界面。
更换 registry
不推荐
npm config set registry http://
推荐
npm i nrm -g
nrm list | nrm ls
nrm add [name] [http://url]
nrm use [name]
nrm del [name]
创建NPM账号
npm adduser | npm adduser --registry http:// localhost:4873 /
username:***
password:***
其它用户相关命令:
npm login #登陆
npm logout #退出
npm whoami #查看当前用户
发布package
npm publish
升级版本号
npm version patch #升级补丁版本号
npm version minor #升级副版本号
npm version major #升级主版本号
verdaccio - profile
verdaccio 的配置文件是默认存放在用户目录中的,在window上其路径是:~\Users\Administrator\.config\verdaccio
- storage : 存放 npm包的目录。
- config.yaml :
verdaccio的配置文件 - htpasswd : 用于保存注册的用户。
config.yaml说明
##设置NPM包的存放目录
storage: ./storage
# 配置WEB UI界面
web :
title : '搭建私有NPM'
#logo : logo.png
## 设置用户验证的文件。
auth:
htpasswd:
file: ./htpasswd
max_users: 1000 #默认为1000,改为-1,禁止注册
# 设置其它的npm注册源(registry)
uplinks:
npmjs:
url: https://registry.npmjs.org/
#配置权限管理
packages:
'@*/*':
#表示哪一类用户可以对匹配的项目进行安装 【$all 表示所有人都可以执行对应的操作,$authenticated 表示只有通过验证的人可以执行对应操作,$anonymous 表示只有匿名者可以进行对应操作(通常无用)】
access: $all
#表示哪一类用户可以对匹配的项目进行发布
publish: $authenticated
'*':
#表示哪一类用户可以对匹配的项目进行安装
access: $all
#表示哪一类用户可以对匹配的项目进行发布
publish: $authenticated
# 如果一个npm包不存在,它会去询问设置的代理。
proxy: npmjs
# 日志输出设置
logs:
- {type: stdout, format: pretty, level: http}
#- {type: file, path: verdaccio.log, level: info}
#修改监听的端口
#listen: 0.0.0.0:4873
PM2启动 verdaccio
pm2 start verdaccio
还需要...
- 在服务器上搭建
- 按需进行用户权限分组?
- Nginx代理
NodeJS学习:搭建私有NPM的更多相关文章
- 使用Sinopia搭建私有npm仓库
使用Sinopia搭建私有npm仓库 在用npm装包的时候,每次都要下载一大堆,慢且不说,npm还老被墙,所以就想到在公司内部搭建npm仓库镜像.大概看了几个,觉得Sinopia最简单也好用,所以就使 ...
- 使用cnpm搭建私有NPM仓库 发布npm包
关于如何使用cnpm搭建私有的npm仓库看这里→ http://blog.fens.me/nodejs-cnpm-npm/ 我本人还没有机会真正实践操作过,公司的npm仓库是我老大搭建的,我这里仅仅记 ...
- 利用Sinopia搭建私有npm包
1.安装sinopia包 npm install -g sinopia 如果是Windows系统用上面的方式安装sinopia很有可能报错,推荐使用下面方式安装: npm install sinopi ...
- 【玩转树莓派】使用 sinopia 搭建私有 npm 服务器
简介 使用 sinopia 的好处是,node系的工程师,内部协作时,使用自有 npm 包,会非常方便:另外,sinopia,会缓存已经下载过的包,可以在相当程度上,加速 npm install 相关 ...
- 搭建私有npm私库(使用verdaccio)
搭建 npm 离线服务器 为什么要搭建npm 服务器 原因: 公司内部开发的私有包,统一管理,方便开发和使用 安全性,由于公司内部开发的模块和一些内容并不希望其他无关人员能够看到,但是又希望内部能方便 ...
- 【转】使用CNPM搭建私有NPM
最近的Node项目中因为数据模型等问题,需要有一个对各个模块进行统一的管理,如果把私有的模型publish到公共的npm不太合适,所以决定使用cnpm搭建一个私有的npm,同时也可以对项目常用的npm ...
- nodejs学习笔记<五>npm使用
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题. 以下是几种常见使用场景: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...
- 搭建前端私有npm杂记
随着前端队伍越来越壮大,项目间共享代码就变得尤为重要.常用的框架/类库没必要在每个项目都放一份,团队内部产出的公共模块也需要有合理的共享机制.现在,用npm管理前端代码已经是业界趋势.楼主尝试用私有n ...
- 私有 npm 仓库的搭建
cnpm 是企业内部搭建 npm 镜像和私有 npm 仓库的开源方案,当企业业务逻辑相关的模块可能不适合开源.这部分私有的模块就可以放在私有 npm 仓库中来管理和维护. 以下为搭建私有 npm 的详 ...
随机推荐
- Hive记录-使用Hue管理Hive元数据
Hue是一个开源的Apache Hadoop UI系统,由Cloudera Desktop演化而来,最后Cloudera公司将其贡献给Apache基金会的Hadoop社区,它是基于Python Web ...
- Spring的单例实现原理-登记式单例
单例模式有饿汉模式.懒汉模式.静态内部类.枚举等方式实现,但由于以上模式的构造方法是私有的,不可继承,Spring为实现单例类可继承,使用的是单例注册表的方式(登记式单例). 什么是单例注册表呢, 登 ...
- Ant基础知识1
1.Ant简介 Apache Ant是一个将软件编译/测试/部署等步骤联系在一起加以优化的一个构建工具,常用于java环境中的软件开发.Ant的默认配置文件是build.xml. 对java语言的支持 ...
- Linux 命令详解(七)Systemd 入门教程:命令篇
Systemd 入门教程:命令篇http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html
- 转--python -- 收发邮件
官方 import smtplib from email.mime.text import MIMEText from email.header import Header # 发送邮箱服务器 smt ...
- Kettle基本概念学习
一,理解开发环境与生产环境. 比如,在windows或mac下设计好流程之后,把该设计文件上传到linux集群的机器上执行.那么,在windows下进行的工作即为开发环境,任务具体在linxu机器上执 ...
- webuploader 百度上传,一个页面多个上传按钮
需求:列表里每条数据需加文件上传 html: <div> <ul class="SR_wrap_pic"></ul> <button ty ...
- vue自学入门-2(vue创建项目)
本人也是刚学习VUE,边找资料,边学习,边给大家分享.1.创建项目 2.启动项目 3.注意上面和下面全部用cnpm
- MySql Workbench导出ER图并存为PDF文件
一.登陆数据库 二.点击Database => Reverse Engineer 三.填入登陆信息后next => next,选择要生成ER模型的数据库 四.点击next => n ...
- hadoop HA 配置 + zookeeper 服务注册
环境测试 6台机器 centos6.7 x64 master ( namenode/cluster ) 10.10.100.101 namenode1 10.10.100.105 namenode2 ...