【发布时间】:2019-01-19 17:10:42
【问题描述】:
有一些 similar questions,但他们没有回答为什么 docker 会在 repo 中创建空的 node_modules 目录,即使 dockerfile 设置为在容器中保存 node_modules?
我很想知道为什么在空主机上创建目录,假设 yarn 已经在 node_modules 内的容器内安装了包以及如何避免它。
## Dockerfile
FROM node:8.11.4-alpine
RUN apk update && apk add yarn
RUN yarn global add nodemon
WORKDIR /usr/app
COPY package.json yarn.lock /usr/app/
RUN yarn
EXPOSE 3000
## docker-compose.yml
version: "3.2"
services:
app:
build:
context: .
dockerfile: Dockerfile
command: nodemon index.js
volumes:
- .:/usr/app
- /usr/app/node_modules
ports:
- "3000:3000"
【问题讨论】:
-
您已安装
/usr/app/node_modules。删除线,它会工作得很好。是不是故意加了/usr/app/node_modules?