部署程序不提取缓存的二进制文件

时间:2019-08-23 18:15:23

标签: npm deployment node-modules npm-install php-deployer

部署者:6.4.6 操作系统:Ubuntu 18.04 LTS npm:5.6.0 节点:8.11.4

您好,当使用deployer进行部署时,我的npm安装花费了157s,但是当我尝试重新创建该步骤(使用同一用户)时(在使用同一个用户的情况下),node_modules到位时花费了13s,而not(30s)和在部署者的npm安装期间,我有node_modules。 似乎问题是使用部署程序时某种缓存无法正常工作。

手动操作时:

npm install

> node-sass@4.8.3 install /var/www/site/releases/4/node_modules/node-sass
> node scripts/install.js

Cached binary found at /home/deployer/.npm/node-sass/4.8.3/linux-x64-57_binding.node

使用部署器时:

➤ Executing task npm:install

[dev] > cp -R /var/www/site/releases/6/node_modules /var/www/site/releases/7/node_modules
[dev] > cd /var/www/site/releases/7 && npm install
[dev] < > node-sass@4.8.3 install /var/www/site/releases/7/node_modules/node-sass
[dev] < > node scripts/install.js
[dev] < Downloading binary from https://github.com/sass/node-sass/releases/download/v4.8.3/linux-x64-67_binding.node
[dev] < Cannot download "https://github.com/sass/node-sass/releases/download/v4.8.3/linux-x64-67_binding.node": 
[dev] < HTTP error 404 Not Found
[dev] < Hint: If github.com is not accessible in your location
[dev] <       try setting a proxy via HTTP_PROXY, e.g. 
[dev] <       export HTTP_PROXY=http://example.com:1234
[dev] < or configure npm proxy via
[dev] <       npm config set proxy http://example.com:8080

在手动执行时,它会拾取缓存的二进制文件,而在通过部署器执行时,它不会-不知道为什么会发生-在使用部署器进行部署时,我是否可能会丢失一些环境变量?

1 个答案:

答案 0 :(得分:0)

所以最终解决了我的问题的是更新了我的laravel-mix依赖关系,该依赖关系使用了更新的node-sass依赖关系,该依赖关系不会下载二进制文件,最后是npm install进程更快了很多