IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 从零使用verdaccio搭建npm私有前端组件库 -> 正文阅读

[开发工具]从零使用verdaccio搭建npm私有前端组件库

1.使用verdaccio搭建npm私服,发布组件库

(1)首先准备一台服务器,安装好node

地址:http://nodejs.cn/download/

(2)cmd全局安装verdaccio

  命令行:npm install -g verdaccio

在这里插入图片描述

(3)执行verdaccio,启动服务

  命令行:verdaccio

在这里插入图片描述

2.npm命令

(1)添加账号

  命令行:npm adduser --registry http://localhost:4873/
Username:注册的用户名;(注册用户名不能重复)

Password:设置密码;

Email:注册邮箱;(注册邮箱不能重复)

(2)登陆账号

  命令行:npm login --registry http://localhost:4873/
Username:注册的用户名;(注册用户名不能重复)

Password:设置密码;

Email:注册邮箱;(注册邮箱不能重复)

(3)初始化项目

命令行:npm init

这里提示输入:

  • name:填写个包的名字,默认是这个文件夹的名字(npm有同名的包会报错);

  • version:包的版本,默认是1.0.0;

  • description:要封装的包的简单介绍;

  • entry point:入口文件,默认是index.js,也可以是其它名字;

  • test command:测试命令,直接回车;

  • git repository:这个是git仓库地址,如果你的包是先放到github上或者其他git仓库里,这时候你的文件夹里面会存在一个隐藏的.git目录,npm会读到这个目录作为这一项的默认值。如果没有的话,直接回车继续;

  • keyword:作为这个包的索引的关键字;

  • author:作者名或账号;

  • license:许可证, 没有就直接回车;

(4)发布项目

命令行:npm publish --registry http://localhost:4873/

发布项目前,需要先登陆

(5)下载项目

命令行:npm install 包名 --registry http://localhost:4873/

3.verdaccio的config.yaml配置文件

在这里插入图片描述


# 存储NPM包的路径
storage: ./storage

#用户管理
auth:
htpasswd:
   #保存用户账户、密码等信息文件
   file: /.htpasswd
   # 允许注册的最大用户数, 默认是无限制
   # 如果是-1, 禁止注册
   #max_users: 1000
 
# 我们可以访问已知的其他存储库列表,用于请求资源不存在,根据此处配置地址请求其他服务器 
uplinks:
npmjs:
   //默认为npm官网,可以在此修改成其他源地址
   url: http://registry.npmjs.org/  

# 配置权限管理   
# 可以指定用户名/组名(取决于你的插件)
# 3个关键字: "$all", "$anonymous", "$authenticated"
# $all表示所有人
# $anonymous表示匿名者
# $authenticated表示只通过验证的人可以执行对应操作

packages:
'@*/*':
   access: $all
   publish: $authenticated
'*':
   access: $all
   publish: $authenticated
   proxy: npmjs
   
# 日志设置   
logs:
- {type: stdout, format: pretty, level: http}

#不设置外网端口无法访问
listen: 0.0.0.0:4873


4.手动添加账号

网站地址:https://hostingcanada.org/htpasswd-generator/
在这里插入图片描述
然后把生成的密码串,复制到htpasswd文件就可以了。

5.常用npm命令行

# 查看 npm 的版本 
npm -v 

# 查看各个命令的简单用法
npm -l 
 
# 查看 npm 命令列表
npm help

# 查看 npm 的配置
npm config list -l

# 初始化模块
npm init

# 设置环境变量
npm set 

# npm search 搜索模块
npm search <搜索词> [-g]
npm search命令用于搜索npm仓库,它后面可以跟字符串,也可以跟正则表达式。

# 查看模块
npm list 

#列出全局安装的模块 带上[--depth 0] 不深入到包的支点 更简洁
npm list -g --depth 0

# 安装模块
npm install

# 默认安装指定模块的最新(@latest)版本
npm install [<@scope>/]<name> 
例如:npm install test

# 安装指定模块的指定版本
npm install [<@scope>/]<name>@<version>
例如:npm install test@3.9.1

# 安装指定指定版本范围内的模块
npm install [<@scope>/]<name>@<version range>
例如:npm install test@">=1.0.28 < 2.0.0"

#卸载当前项目或全局模块 
npm uninstall <name> [-g] 
例如: npm uninstall test --save-dev  
     npm i test -g
     
#升级当前项目或全局的指定模块
npm update <name> [-g] 
例如: npm update express 
     npm update express -g

# 引用依赖 有些包是全局安装了,在项目里面只需要引用即可。
npm link [<@scope>/]<pkg>[@<version>]
例如: 引用   npm link test test-ssh test-ftp
例如: 解除引用 npm unlink test

#注册添加新用户
npm adduser
//执行后 填写几个问题 Username、Password、Email

#已注册
npm login 

#发布模块
npm publish (必须先登录再发布)

#执行脚本
npm run 
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-02-24 15:30:20  更:2022-02-24 15:30:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 8:26:46-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码