Docker Compose w / Gulp – 找不到本地gulp
我正在尝试在Docker容器中使用gulp。
我有以下的Dockerfile
FROM golang:alpine RUN apk --update add --no-cache git nodejs RUN npm install --global gulp ENV GOPATH=/go PATH=$PATH:/go/bin VOLUME ["/go/src/github.com/me/sandbox", "/go/pkg","/go/bin"] WORKDIR /go/src/github.com/me/sandbox CMD ["gulp"]
我有以下docker-compose.yml
version: '2' services: service: build: ./service volumes: - ./service/src/:/go/src/github.com/me/sandbox
docker-compose build
构build成功构build,但是当我运行docker-compose up
,出现以下错误消息
Recreating sandbox_service_1 Attaching to sandbox_service_1 service_1 | [22:03:40] Local gulp not found in /go/src/github.com/me/sandbox service_1 | [22:03:40] Try running: npm install gulp
我尝试了几个不同的事情来尝试修复它。
- 也试图在全球和本地安装
gulp-cli
- 试图用
npm install gulp
在本地npm install gulp
- 尝试在
WORKDIR
之后移动npm install --global gulp
- 尝试了不同的path。
我的猜测是,这与卷有关,因为当我摆脱与卷有关的任何事情时,它不会抱怨。
Mr项目结构如下图所示:
你需要一个本地版本的吞咽以及全球。
添加这一行应该可以解决你的问题
RUN npm i gulp