docker工不在主机上安装依赖关系(node_modules)
当我运行docker-compose build
我发现package.json中的依赖关系安装在容器上,而不是我的机器上。 所以后来当我运行docker-compose up
我得到错误,依赖没有find,即: Error: Cannot find module 'express'
我的应用程序结构非常简单,如下所示:
|____frontend | |____index.html | |____index.js | |____webpack.config.js | |____yarn.lock | |____package.json | |____dev.Dockerfile |____backend | |____server.js | |____yarn.lock | |____package.json | |____dev.Dockerfile |____docker-compose.yml
我的docker-compose.yml:
version: "3.3" services: frontend: build: context: . dockerfile: frontend/dev.Dockerfile volumes: - ./frontend:/frontend:cached command: yarn start backend: build: context: . dockerfile: backend/dev.Dockerfile volumes: - ./backend:/backend:cached command: yarn start
这是前端的Dockerfile(后端看起来是一样的):
FROM node:latest WORKDIR "/frontend/" COPY frontend/package.json frontend/package.json COPY frontend/yarn.lock frontend/yarn.lock RUN yarn
这个configuration有什么问题? 我错过了什么?