目前公司使用的是 Jenkins 构建 Vue 前端工程,但是一直卡在 npm install 上老半天也不动,也不报错,求解。
1
linshuizhaoying 2020-06-30 08:54:48 +08:00 1
源可能有问题 建议换成淘宝源
|
2
carlton 2020-06-30 08:54:58 +08:00
是不是 jenkins 服务器不通外网?或者 npm 的原生源太慢导致的,可以试着把 npm 源换成淘宝的
|
3
CHANGEX929 OP @linshuizhaoying 感谢回复,目前用的是淘宝源。服务器不通外网是真的,但是已经代理了淘宝源了,在同样的网络环境下,我的本地 Windows 电脑是可以正常 install 的
|
4
CHANGEX929 OP @carlton 已经换成淘宝源,还是一直在 npm install
|
5
CHANGEX929 OP 有个问题是,有时候很快,有时候就一直卡着不动,很奇怪
|
6
hahahahaha234 2020-06-30 09:04:23 +08:00
自己在本地 npm install, 传个 dist 上去啊,临时方案哈,jenkins 脚本把 npm install 注释掉
|
7
CHANGEX929 OP @hahahahaha234 我本地是 Windows,Jenkis 是在 Linux,这样不行的,暂时没有 Linux 机器可以让我 npm install
|
8
vvong 2020-06-30 09:09:58 +08:00
会不会是卡到安装 node-sass 那里了
|
9
hahahahaha234 2020-06-30 09:11:03 +08:00
一般来说,jenkins 从 gitlab 拉取代码的啊,你本地 build 完事有了 dist,传到 gitlab,jenkins 自己拉取应该可以把
|
10
ghost3281 2020-06-30 09:11:15 +08:00
登到 Jenkins 服务器手动执行一遍?要不就是权限有问题
|
11
CHANGEX929 OP @ghost3281 谢谢回复,我这边没有权限登录 Jenkins 服务器
|
12
CHANGEX929 OP @vvong node-saas 我上传到 git 上了
|
13
CHANGEX929 OP @hahahahaha234 你这是一个好思路!!
|
14
cominghome 2020-06-30 09:17:41 +08:00
“我这边没有权限登录 Jenkins 服务器”
那说明 jenkins 有人维护啊,让他去 workspace 目录下手动跑一下 npm install 试试 |
15
yuningWang8 2020-06-30 09:20:19 +08:00
估计是其它依赖拉不下来呗。毕竟好多二进制文件都再 npm 库里。
|
16
Saurichthys 2020-06-30 09:26:35 +08:00
部署服务器是 windows 还是 linux,如果是 windows 需要排查一下 jenkins 有没有把 npm 加入系统命令
|
17
fhw12372 2020-06-30 09:28:52 +08:00
应该是网络卡住了,删掉 node_modules 文件夹在 linux 里面试下执行,成功后再去 jenkins 跑
不建议用淘宝源,直接用 npm 官网源会少很多问题 node-sass 跟 chromedriver 下不了的可以单独设下淘宝源,具体可以看下官方库的 readme,基本上都有写 |
18
carlton 2020-06-30 09:32:34 +08:00
@CHANGEX929 #3 服务器不同外网肯定失败呀...
|
19
CHANGEX929 OP @carlton 公司内部的 npm 仓库已经代理了淘宝源了
|
20
CHANGEX929 OP @fhw12372 我试一下!
|
21
magicZ 2020-06-30 10:13:35 +08:00
我们项目也是这么搞得,直接 git 上传 dist,jenkins 就起到一个钩子拉代码的作用。不过我们服务器直接 npm install 也不行,淘宝源,v6X
|
22
buffzty 2020-06-30 11:04:32 +08:00
1. 用 yarn
2. 检查下是不是有 puppeteer ,node-sass,sentry 这种 如果有请定义镜像下载环境变量 3. 使用淘宝源 4. 这跟 jenkins 无关, 你 npm i 是在服务器上运行的. jenkins 只负责展示服务器的输出. 5. 如果用 yarn 还卡 用 yarn --verbose 可以查看卡在哪里了 |
23
w292614191 2020-06-30 11:09:16 +08:00
我这边是直接复制文件夹到 nginx 目录下,就算构建完了。哈哈哈哈哈
|
24
mikuazusa 2020-06-30 11:11:02 +08:00
和 jenkins 无关,必须先手动在构建机器上成功构建,再用 jenkins 来调用命令构建。
|
25
zengtv 2020-06-30 15:07:21 +08:00 1
删除一下 node_modules 文件夹试试
|
26
CHANGEX929 OP @buffzty 我猜是服务器的问题,因为我执行 npm install yarn -g 他也卡着不动。但是后来我又一次构建的时候 npm install 很快就完成了。
|
27
IGJacklove 2020-06-30 17:57:55 +08:00
有 npm 的日志吗? npm install --verbose
可以看一下卡在哪一步了,确定问题在哪之后就很好解决了 |
28
CHANGEX929 OP @IGJacklove 原来可以这样! 下次再出问题的时候我拿这个分析一下试试。谢谢!
|
29
linvaux 2020-06-30 23:04:48 +08:00
npm install yarn -g
yarn install yarn run build |
30
CHANGEX929 OP @linvaux 问题是 npm install yarn -g 这条命令都一直卡住
|