Verdaccio发布私有库

155 阅读1分钟

1. 安装verdaccio

  • npm(方式一):

        # 全局安装
        npm install -g verdaccio
    
        # 运行(使用时,需要保持运行状态)
        verdaccio
    
  • docker(方式二):

        # 拉取verdaccio
        docker pull verdaccio/verdaccio:latest
    
        # 运行容器
        docker run -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio
    

运行成功之后,打开浏览器:http://localhost:4873

输出日志里可以看到配置文件,例如:C:\Users\hf\AppData\Roaming\verdaccio\config.yaml

2. 修改配置文件:config.yaml

  • 配置离线发布(离线需要)

        publish:
          allow_offline: true
    
  • 设置淘宝源(离线不需要)

        uplinks:
          npmjs:
            url: https://registry.npmmirror.com/
    
  • 开发访问,不然内网访问不到你的verdaccio服务。

        listen:
        # - localhost:4873            # default value
        # - http://localhost:4873     # same thing
          0.0.0.0:4873              # listen on all addresses (INADDR_ANY)
    

修改后需重启

3. 管理源

  • 方式一:使用前设置

        # 设置源
        npm/yarn config set registry http://localhost:4873/
    
        # 查看当前源
        npm/yarn config get registry
    
  • 方式二:nrm。如报"open"相关的错,找到文件,注释掉该行即可

        # 全局安装
        npm i -g nrm
    
        # 添加本地源
        nrm add private http://localhost:4873/
    
        # 查看所有源
        nrm ls
    
        # 切换源
        nrm use private
    

4. 发布及更新

  • 创建用户:npm adduser --registry http://localhost:4873/
  • 删除用户:在 config.yaml - htpasswd 所在文件内删除行即可
  • 登录用户:npm login
  • 查看登录用户:npm whoami
  • 执行发布:cd 到私有仓库,npm publish
  • 删除发布:npm unpublish xxxLib --force

注意:更新时需要修改版本号


创建私有库

  1. 新建package
        mkdir local-test-lib
        cd local-text-lib
        npm init -y
    
  2. 新建 index.ts 文件,并添加简单代码:export default '测试检查';
  3. 新建 index.d.ts 文件,并添加简单代码:declare module 'vvho';

使用私有库(verdaccio发布之后)

    npm install local-test-lib
    yarn add local-test-lib