美文网首页
在Docker中安装Verdaccio(Sinopia的新版本)

在Docker中安装Verdaccio(Sinopia的新版本)

作者: JADDC | 来源:发表于2019-06-18 18:02 被阅读0次

    Verdaccio官网地址:https://verdaccio.org/en/

    一、拉取镜像

    docker pull verdaccio/verdaccio

    二、运行容器

    docker run -d -it --rm --name verdaccio -p 4873:4873 verdaccio/verdaccio

    通过http://localhost:4873/访问

    tips:生产环境使用,建议做数据持久化


    运行效果
    三、通过Nrm查看&修改Npm默认仓库为私有Npm服务地址

    Q:什么是Nrm?
    A:nrm是一个管理npm的工具,能够查看和切换当前使用的registry。

    1、添加私有Npm服务 nrm add myNpm http://localhost:4873/
    2、将私有Npm服务设置为默认的Npm库nrm use myNpm

    Nrm 的GitHub仓库 :https://github.com/Pana/nrm

    四、登录并且推送Npm库到Verdaccio
    • 1、使用命令npm adduser登录Verdaccio,如果没有使用nrm切换npm源,则需要使用 npm adduser --registry http://localhost:4873

      图片.png
    • 2、使用npm init创建一个项目。

    npm init用来初始化生成一个新的package.json文件。它会向用户提问一系列问题,如果你觉得不用修改默认配置,一路回车就可以了。 如果使用了-f(代表force)、-y(代表yes),则跳过提问阶段,直接生成一个新的package.json文件

    参考地址:https://www.jianshu.com/p/92c0293bba66?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

    index.js代码如下

            exports.showMsg = function () {
            console.log("This is my first module");
              };
    

    package.json代码如下

    {
      "name": "npm",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "author": "",
      "license": "ISC"
    }
    
    图片.png

    3、推送第二步创建的项目到Verdaccio私服中

    npm adduser(用户名、密码、邮箱)-- 注册帐号
    npm whoami(查看当前帐号)
    sudo npm publish(发布到npmjs.org)-- 注意:sudo权限
    如果没有注册npm账户npm adduser USERNAME
    如果没有登录npm login

    • 定位到项目目录,执行npm publish发布到私服中。如果没有使用nrm切换npm源,则需要使用 npm publish --registry http://localhost:4873
    图片.png

    4、从私服中安装npm包

    • 使用npm安装包的命令格式为:npm [install/i] [package_name] --registry [私服地址]

    5、如何删除之前的版本
    npm unpublish (npm包名@1.0.0)

    npm unpublish的推荐替代命令:npm deprecate <pkg>[@<version>] <message>
    使用这个命令,并不会在社区里撤销你已有的包,但会在任何人尝试安装这个包的时候得到警告
    例如:npm deprecate test '这个包已经不再维护了喔'

    6、如何更新包?

    修改package.json里的version字段,注意格式(0.0.1),
    [第一个0(位置)]是项目或者工具功能方面较大的更改以及版本之间不兼容,
    [第二个0(位置)]是对原来的项目或者工具进行功能的增加与删除
    [第三个0(位置)]是修改bug
    npm publish

        本地更新版本号
        比如我想来个1.0.1版本,注意,是最后一位修改了增1,命令:npm version patch
        比如我想来个1.1.0版本,注意,是第二位修改了增1,命令:npm version minor  
        比如我想来个2.0.0版本,注意,是第一位修改了增1,命令: npm version major
    

    参考地址:
    1、http://www.pianshen.com/article/6822333782/
    2、https://medium.com/@ceall8650/%E7%AD%86%E8%A8%98-%E5%BB%BA%E7%AB%8B%E8%87%AA%E5%B7%B1%E7%9A%84-npm-%E4%BB%A5npm-orgs%E8%B7%9Fverdaccio%E7%82%BA%E4%BE%8B-cfb83b2307e6
    3、https://medium.com/@sibeeshvenu/having-a-docker-container-as-your-private-npm-registry-the-easy-way-68159fa94cc4

    4、https://blog.programster.org/Verdaccio-host-your-own-npm-packages

    5、https://medium.com/@ayusharma.in/npm-registry-for-your-organisation-aeb8ea76144

    6、https://medium.com/@tompape/kubernetes-private-npm-registry-fb5f450fa611

    7、https://blog.csdn.net/YYZZHC999/article/details/80100388

    8、https://blog.csdn.net/weixin_34234829/article/details/88203405

    9、http://ju.outofmemory.cn/entry/338244

    10、https://blog.csdn.net/yyzzhc999/article/details/80100388
    11、https://blog.csdn.net/weixin_43249693/article/details/84453017

    12、https://www.cnblogs.com/pingfan1990/p/4824658.html

    13、https://blog.csdn.net/qq_24956515/article/details/80514262

    相关文章

      网友评论

          本文标题:在Docker中安装Verdaccio(Sinopia的新版本)

          本文链接:https://www.haomeiwen.com/subject/hjfqqctx.html