在部署依赖比较多的包,例如angular2的时候,你们是怎么处理package.json依赖的包呢? 财富值9

2016-11-03 17:42发布

最近我在部署我前端代码的时候,碰到一个问题,在git版本库,为了防止加入一些无关代码和更新导致的N多change,把node_module添加到了.gitignore(相信大部分人都是怎么做的)。

但是在部署的时候,我在部署脚本安装依赖的时候...发现npm install真是巨慢无比啊(已经用了淘宝的源),在阿某云的服务器,带宽不高只有1m,但是每次都是retrytimeout.不是慢,而是完全下载不下来。

后面看了下yarn,好吧介绍是比npm好使很多,有lock文件,保证本地和线上用的同一个版本。并发加载资源。然而...我npm install yarn -g都安装不下来。如下卡在那个位置了。

ports-color extract:node-gyp → gunzTa ▄ ╢███████████████████████████████████████░░░░░░░░░░░░░░░░░░░░░╟

我目前的思路就是:

  1. 使用依法上网,感觉也不稳定。

  2. node_module里面的文件打个tar.gz包上传到git(直接把所有文件添加到git就太暴力了).

  3. 其他?

想问下大家是怎么解决这个问题呢?谢谢大家。

8条回答
cyr00924 - 这个人很懒,什么都没留下
1楼 · 2016-11-03 18:23.采纳回答

嘿嘿,简单啊,用webpack打包好了再整体放上去了,这样服务器就不需要再npm install了

osx

段曼 - 我很好
3楼-- · 2016-11-03 18:18

还有一条路,在公司找台服务器自己用cnpm搭一个私有镜像,这样每次安装都从你们公司内网下,想想是不是就有点小激动?(我是这么干的,快多少不敢保证,但再也不会卡死在一个点了)

泻药

大致是:

其他系统的安装方式就不一一列举了,官网都有。至于用了yarn到底在你环境里能快多少,我就不敢说了。

首先关于yarn的安装,官网首推的不是npm安装方式,针对不同平台,方式也不同,可以自己去看:installtion

部署当然是打完包再扔到服务器啦。不要让服务器自己去更新,打包。

一周热门 更多>