前端 2019-02-15 14:46:13

1. 镜像切换

  • 安装nrm工具

     npm install -g nrm
    
  • 常用命令

    ls                           List all the registries
    current                      Show current registry name
    use <registry>               Change registry to registry
    add <registry> <url> [home]  Add one custom registry
    del <registry>               Delete one custom registry
    home <registry> [browser]    Open the homepage of registry with optional browser
    test [registry]              Show response time for specific or all registries
    

2. 私有npm仓库搭建

  • 安装

    npm install -g verdaccio
    
  • 启动

    verdaccio
    

配置文件: verdaccio/config.yaml

  • 服务器

    1. 配置文件新增两行配置

      listen: 0.0.0.0:4873
      
      url_prefix: 服务器域名 e.g.http://npm.miaokefu.com/
    

    可以通过uplinks新增镜像源,

    uplinks:
      npmjs:
        url: https://registry.npmjs.org/
      taobao:
        url: https://registry.npm.taobao.org/
    

    verdaccio会向每个上行链路都发送一次这样的请求,所以避免配置过多的上限链路,否则会导致查询速度过慢

    2.pm2启动

      pm2 start verdaccio
    

3. npm包上传

  • verdaccio仓库

    • 添加用户

      npm adduser --registry <npm server>
      
    • 发布到服务器 在需要发布的项目根目录下执行

      npm publish --registry <npm server>
      
  • npmjs仓库

    • 切换镜像到npmjs
      nrm use npm
      
      未安装nrm的可以执行
      npm config set registry=http://registry.npmjs.org
      
    • 登录npm
      npm login
      
      输入用户名、密码、邮箱
    • 发布
      npm publish
      
      如果出现错误:you must verify your email before publishing a new package ,去npm网站上重新设置你的邮箱,进行验证

参考:

https://verdaccio.org/