2016-09-14 55 views
0

我使用docker-compose构建了这个dockerfile,我需要它在docker中构建本地模块(不仅仅是从本地复制它们)。这只能在我的本地模块构建(NPM安装)当我删除此运行,但没有node_modules目录,它提供了一个错误:错误:找不到模块“表达”Node.js模块不在Docker中构建

FROM mhart/alpine-node:6 
MAINTAINER Me 

COPY package.json index.js lib /app/ 

WORKDIR /app 

RUN apk add --no-cache make gcc g++ python && \ 
    addgroup -S app && adduser -S -g app app && \ 
    npm install && \ 
    npm cache clean && \ 
    apk del make gcc g++ python 

USER app 

这里是应用程序目录:

.dockerignore 
.eslintignore 
.eslintrc.js 
Dockerfile 
docker-compose.yml 
index.js 
lib 
npm-debug.log 
package.json 
+0

我想添加你的package.json可以提供更多的见解。 – ppeterka

回答

1

问题在于docker将应用程序文件夹从主机绑定到容器的方式。我的docker-compose.yml的volume部分的第二行修复了它。

volumes: 
    - .:/app 
    - /app/node_modules