Php ';找不到二进制sh';在gitlab webhook之后运行“纱线安装”时
我的服务器上发生了一些神秘的事情,我不知道为什么。我正在尝试运行一个简单的部署脚本,其中包含Php ';找不到二进制sh';在gitlab webhook之后运行“纱线安装”时,php,git,shell,npm,Php,Git,Shell,Npm,我的服务器上发生了一些神秘的事情,我不知道为什么。我正在尝试运行一个简单的部署脚本,其中包含纱线安装。该脚本由来自Gitlab CE服务器的POST请求触发。服务器的规格: Ubuntu 16.04 Nginx(干线) 节点6/Npm 3 PHP7.1 webhook由包含以下内容的PHP文件接收: exec('cd /var/www/example.com && sh deploy > deploy.log 2>&1 &'); deploy文件
纱线安装
。该脚本由来自Gitlab CE服务器的POST请求触发。服务器的规格:
- Ubuntu 16.04
- Nginx(干线)
- 节点6/Npm 3
- PHP7.1
exec('cd /var/www/example.com && sh deploy > deploy.log 2>&1 &');
deploy
文件包含一些命令,如git pull
、composer install
和warn install
。除纱线/NPM外,其他一切正常。它一直在抱怨:
error /var/www/example.com/node_modules/node-sass: Couldn't find the binary sh
我已经搜索了几个小时(也许几天)来寻找解决方案,但到目前为止没有成功。希望有人能帮助我(还有其他人)
也许有人想知道:我现在正在使用Gitlab CI构建、测试和部署一切。容易多了!现在一切都在Docker映像中(本地)构建。一些解释可能会有所帮助
error Couldn't find the binary cross-env NODE_ENV=development node_modules/webpa
ck/bin/webpack.js --watch --progress --hide-modules --config=node_modules/larave
l-mix/setup/webpack.config.js