gulp不能在Docker Ubuntu上运行

我正尝试使用gulp在docker环境中启动一个webpack编译器。 当我尝试运行命令(在ssh,Dockerfile或Procfile中)时,它将失败,并显示错误代码1,并且什么也不打印。

我检查和gulp安装在node_packages,但是当我从node_packages / .bin运行它,我得到相同的响应。 运行“npm”工作,但运行“节点”似乎也不工作。

有谁知道发生了什么问题?

Dockerfile

FROM quay.io/aptible/ubuntu:14.04 # Basic dependencies RUN apt-install build-essential python-dev python-setuptools RUN apt-install libxml2-dev libxslt1-dev python-dev # PostgreSQL dev headers and client (uncomment if you use PostgreSQL) # RUN apt-install libpq-dev postgresql-client-9.3 postgresql-contrib-9.3 # MySQL dev headers (uncomment if you use MySQL) RUN apt-install libmysqlclient-dev RUN easy_install pip RUN apt-install node RUN apt-install npm # Add requirements.txt and package.json ONLY, then run pip install, so that Docker cache won't # bust when changes are made to other repo files ADD requirements.txt /app/ ADD package.json /app/ WORKDIR /app RUN pip install -r requirements.txt RUN npm install # Add repo contents to image ADD . /app/ # RUN npm install -g gulp # RUN gulp webpack:dev #django environment variables # ENV DATABASE_URL xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ENV SECRET_KEY xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ENV DJANGO_SETTINGS_MODULE xxxxxxxxxxxxx ENV PORT 3000 EXPOSE 3000 

procfile

 web: sudo node_modules/.bin/gulp webpack:dev && sudo python app/manage.py runserver 0.0.0.0:$PORT 

改变这些线

 RUN apt-install build-essential python-dev python-setuptools ... RUN apt-install node RUN apt-install npm 

对这些:

 RUN apt-install build-essential curl python-dev python-setuptools ... RUN curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - RUN apt-get install -y nodejs 

你会注意到我们添加了curl到你的工具安装中,我们抓取节点ppa,然后安装它。 这将给你在该分支上的更新版本的节点。 它也将带有npm,你不需要单独安装。

取消注释这一行,因为你想吞咽成为一个全球性的安装

 # RUN npm install -g gulp 

相应地,在你的proc文件中 – 使用全局吞咽