资讯专栏INFORMATION COLUMN

使用docker和docker-sinopia搭建私有的npm

oliverhuang / 2734人阅读

作为新时代的前端,我们现在很多的项目都已经使用npm作为包管理器了,我们会把一些通用组件发布到npm,但是有时候一些组件涉及到业务或者安全方面的,我们不希望把包发布到所有人都能看到的npm上,这时候我们就需要有一个私有的npm资源库。这里我们选用sinopia来搭建我们自己的npm,然后利用docker来进行打包和部署.

首先我们找到了这个项目https://github.com/kfatehi/docker-sinopia,这是别人创建的一个打包sinopia的docker build,我们把它clone下来,然后修改一下配置,适合我们的场景

git clone https://github.com/kfatehi/docker-sinopia.git

然后我们修改里面的config.yaml文件,这个文件在docker启动起来的时候会生成真正的配置文件

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

我们把这里的url改成http://r.cnpmjs.org,因为在国内直接使用npmjs.org会很卡,而且很容易丢包,造成安装失败

修改完折后执行docker build -t jokcy/sinopia .命令,打包成image,这个过程会比较慢,依然是因为网络问题

打包完了之后我们可以传到docker hub上,这样我们可以在我们的服务器上直接通过

docker run --name sinopia -d -p 4873:4873 jokcy/sinopia:latest

来进行启动docker,但是还是网络问题,我们打包上传的过程可以说是蜗牛一般,反正我传了一天都没有传上去。

当然我们还是有别的办法的,通过

docker save -o ~/docker_images/sinopia jokcy/sinopia

命令把我们的image打包成一个文件,然后上传到我们的服务器上,再通过

docker load -i 

在服务器上load一下这个image,然后就可以run了

当然以上修改配置、build的步骤你可以直接在服务器上执行,这样就省去打包上传的过程了

docker很好用,同时加上docker hub这样的生态,会节省我们很多时间。

然而我们节省的时间都花在网络上来......╮(╯▽╰)╭

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26556.html

相关文章

  • 使用 docker + verdaccio 搭建npm私有仓库

    摘要:本文介绍如何使用搭建私有仓库,以及使用时如何映射到本地目录,方便简单对仓库进行各种操作。其次,创建目录,并添加的配置文件。当需要把某个项目发布到私有库时,直接。使用包名,即可安装私有包了。本文介绍如何使用 verdaccio 搭建私有npm仓库,以及使用 docker 时如何映射到本地目录,方便简单对仓库进行各种操作。系统环境是 Linux。 verdaccio verdacci...

    fantix 评论0 收藏0
  • Nexus3私有仓库搭建 docker+maven+npm

    摘要:安装号称是世界上最流行的私服管理软件可以搭建几乎目前所有常见的仓库如等更是增加了对仓库的支持应该是搭建私服的唯一选择有两个版本和其中版本是免费专业版需要收费对于日常的仓库管理已经足够用支持二进制文件安装和安装这里选择安装简单方便运行以下命令 安装 Nexus号称是世界上最流行的私服管理软件(The worlds most popular repository),可以搭建几乎目前所有常见...

    bang590 评论0 收藏0
  • npm私有仓库 配置verdaccio在docker环境

    摘要:前端开发过程中,少不了自己封装一些通用的包,但又不想放在公共的平台,所以搭建一个私有的仓库是很有必要的。在这里简单介绍如何使用在环境下的配置。轻量级私有代理注册表。加上,那就真的无敌方便了,搭建一个私有仓库轻轻松松几分钟搞定。前端开发过程中,少不了自己封装一些通用的包,但又不想放在公共的平台,所以搭建一个npm私有的仓库是很有必要的。 在这里简单介绍如何使用 verdoccio 在docke...

    vboy1010 评论0 收藏0
  • DevOps 从零开始-仓库环境搭建Docker,Nginx,Nexus,Gitlab,免费Htt

    摘要:本文章用于描述如何从零开始进行阿里云仓库的搭建,以及过程中遇到的相关问题。涉及的内容包括,,,,。目标硬盘挂载阿里云额外购买的硬盘服务,需要仅挂载后才可以正常使用。域名代理免费代理的域名通过阿里云域名解析暴露到外网。 本文章用于描述如何从零开始进行阿里云仓库的搭建,以及过程中遇到的相关问题。涉及的内容包括Docker,Nginx,Nexus,Gitlab,Https。 背景 需要搭建一...

    FWHeart 评论0 收藏0
  • DevOps 基于Walle小型持续集成实战(二)设计

    摘要:以便对整个持续集成印象加深。配置完各环境发布脚本后,则可以使用构建发起进行触发环境准备。并会在远程环境上存放多次发布的版本,用于回退和切换服务停用。进行等操作,停止原本运行的服务切换启用。 该文章用于建立一个小型的基于Walle的持续集成工具。解决java,react,angular项目的编译发布。以便对整个持续集成印象加深。官方网站:https://walle-web.io/ 适用...

    zr_hebo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<