搭建 NPM 私有服务搭建入坑记
前两天刚写完如何基于 CNPM 搭建一个私有服务,然后搭建到了线上正式服务器上,结果今天就栽坑里了。具体坑如下。
一、服务器磁盘空间被爆满
笔者搭建了两私有服务,一套在测试机器,一套在线上机器,然而自己比较犯傻的一步就是,在测试机器上的 cnpm 配置与线上机器的 cnpm 配置不太一样~,然而问题就出现在了这不太一样的配置上。
- 罪魁祸首:
syncModel
我们看一下 cnpm 中 config 配置文件对此属性的简介:
我们看到该属性值一共有三种选择。
1、none
:不同步任何模块,代理所有公共模块从sourceNpmRegistry
获取。
2、exist
:只会同步已存在的模块(理解能力差,懵逼中~)
3、all
:同步所有的模块
简单的从这三个属性值的翻译上来说,似乎除了最后一个all
的属性值比较易懂,其它的并不能理解的太明白(一个理科生,确实对这种语言文学理解能力差一点 /(ㄒoㄒ)/~~)。
我在线上机器上配置的该属性值为exist
,然后结果就导致线上服务器磁盘爆满,影响到了服务器上的其他服务~
针对此属性值我们来看一下他实现的方式,path:sync/sync_exist.js
。
ok, 从这几行代码里面我们清楚地看到,使用exist
的属性,第一次会从官方的注册表同步所有的包!也就是说,当你在服务器上搭好私有服务之后,他会慢慢的同步官方注册表所有的包到你私有服务器的注册表中,显然,这就会增加你服务器上的硬盘存储,这就是最终会导致服务器硬盘爆满,所以我们这一个属性默认就好了。默认为none
(不会同步官方的注册表中的包,私有服务器上的包只有自己上传的)。
二、可以发包,但是安装不了
这个坑还不算是一个大坑,起码这个问题在测试服务器上就已经发现了
前两天开开森森的搭建好私有服务之后,就告诉同事了,然后让同事进行测试一下。然后发包 -> 装包… 诶?发现安装不上去,一开始还在想,我电脑没问题呀,然后回到自己电脑上再次进行安装同事发布的那个包,安装失败?,真尴尬~
找一下原因所在吧,发现安装的是有,域名是我这台服务器上的域名。然后配置文件中默认是的:registryHost: r.cnpmjs.org
怪不得发包的时候能够发布,但是安装的时候安装不了,这个是可配置的属性,将这个属性值改为你的服务器 IP 地址就可以了,记得要加 registry 的端口号(默认为 7001)
三、简单的将页面改装成自己想要的页面样子
不得不说,搭建好的本身页面都是英文的,还有一张大图片看着都不舒服,就是想把它给干掉
直接修改 docs/web/readme.md
文件。看里面有什么不想要的,直接删,想改成中文,直接改。改成自己想要的页面简介就 ok 了。
Ending,thx…
搭建 NPM 私有服务搭建入坑记相关推荐
- 使用verdaccio 搭建npm私有仓库
使用verdaccio 搭建npm私有仓库 1. 为什么要搭建私有的npm仓库? 随着公司的业务越来越复杂,项目迭代速度也越来越快,那么项目间的常用的业务代码共享变得非常之有必要.但是对于公司 ...
- verdaccio内网离线搭建npm私有仓库
使用场景: 前端项目的编译运行开发中报下载经常出错: 项目场景:通常我们前端项目开发搭建过程中通过npm管理前端js库,新建项目或内网开发过程中经常出现环境搭建的问题,例如常见错误Failed at ...
- 前端人员如何在linux服务器上搭建npm私有库
为什么要搭建npm私有库? 为了方便下载时,公共包走npmjs,私有包走内部服务器. npm包下载的速度较慢,搭建npm私有库之后,会先操作私有库中是否有缓存,有缓存直接走缓存,而不用重新再去请求一遍 ...
- 米大师服务端接入坑记录
米大师服务端接入坑记录 近期因为项目需要接入应用宝的米大师支付,在接入中遇到一些坑,这里记录以下,以便方便需要的朋友参考. 主要是以下几个需要注意的问题: 文档混乱,腾讯应用开放平台和米大师支付等地方 ...
- npm run build 打包爬坑记(1)
npm run build 打包爬坑记 先说说打包过程,npm run build 后放入phpstudy里面,访问本地ip,查看phpstudy的端口号,就能访问页面了(访问地址:http://19 ...
- 【SAP PO】X-DOC:SAP PO 接口配置 REST 服务对接填坑记
X-DOC:SAP PO 接口配置 REST 服务对接填坑记 1.背景 2.PO SLD配置 3.PO https证书导入 1.背景 (1)需求背景: SAP中BOM频繁变更,技术人员在对BOM进行变 ...
- NPM私有服务器搭建方法——sinopia
npm搭建一般有两种方式cnpm和 sinopia,本文主要介绍sinopia搭建npm服务器方法. 1.首先sinopia安装,只需一行代码 就这么简单.启动服务: 看到以下图就启动成功: 注意:上 ...
- NLB服务搭建与WDS服务搭建
NLB服务搭建 两台2008虚拟机 搭建前准备: 先配置两台虚拟机IP,并更名 然后把IP与计算机名添加到hosts文件下,两台都需要添加 重启计算机 ping一下看两台虚拟机能否ping通 两台虚拟 ...
- Win10安装安卓模拟器入坑记
笔记本换了硬盘,安装Win10之后,装了一堆软件和工具,包括Docker for Windows等,然后打算安装一个安卓模拟器.之前一直用的逍遥,也没碰到啥问题,这次就打算仍然用它.没想到开始入坑了: ...
最新文章
- GHOST重装系统只剩一个C盘 数据恢复方法
- 系统架构师考试知识点mp3资料免费下载
- python 分班_Python学习作业一
- 当推荐系统遇上用户画像:你的画像是怎么来的?
- extern C 作用
- Python 辨异 —— __init__ 与 __new__
- boat启动器 minecraft_minecraft boat
- 兄弟连学python(4)——Css选择器
- win7(64位)php5.5-Apache2.4-环境安装
- 选择本地照片之后即显示在Img中(客户体验)
- 智能机械按摩椅的改进设计
- Viso各版本网盘免费下载
- 达梦数据库(DM7) 常用运维语句
- 【PRD】倒推“Soul”APP产品需求文档
- 杭州城市交通拥堵综合治理实践
- 宋宝华: 纪念金庸先生——程序员的武侠世界
- ES数据的操作(二)
- c# FileHelper 对文件压缩解压,压缩包加密
- 2016 Micu课堂王铎UI图标设计特训班高级高清原版教程
- SDRAM DQM的解释