docker-compose不能从npm中看到node_modules
我想我不是第一个有这个问题的人,但是我没有看到对我有用的东西。
docker-compose.yml文件
web: build: . volumes: - .:/src ports: - "3000:3000"
Dockerfile
FROM node:0.12 RUN npm install -g mocha RUN mkdir /src WORKDIR /src ADD package.json /src/package.json RUN npm install COPY . /src EXPOSE 3000 CMD node server.js
Aand成功构build后通过docker-compose up
运行,我有和错误:
web_1 | Error: Cannot find module 'express' web_1 | at Function.Module._resolveFilename (module.js:336:15) web_1 | at Function.Module._load (module.js:278:25) web_1 | at Module.require (module.js:365:17) web_1 | at require (module.js:384:17) web_1 | at Object.<anonymous> (/src/server.js:1:77) web_1 | at Module._compile (module.js:460:26) web_1 | at Object.Module._extensions..js (module.js:478:10) web_1 | at Module.load (module.js:355:32) web_1 | at Function.Module._load (module.js:310:12) web_1 | at Function.Module.runMain (module.js:501:10)
任何想法可能是错的? 我已经花了超过3小时的这个任务,我不知道为什么这个不起作用(新手对docker工人)。
我想你是通过使用一个volume: - .:/src
覆盖目录volume: - .:/src
。
如果你这样做,你需要在主机上运行npm install
- 如何访问在Mesos上运行的Web应用程序?
- 无法从Docker容器内部连接到Redis群集
- 奇怪的ECONNRESET错误我无法弄清楚
- 在docker容器中运行nodeJS应用程序,selenium和webdriver.iotesting
- 当在Docker for Windows上安装node-sass时,npm系统调用符号链接错误-95
- 无法在Docker中编译打字稿
- 阻塞调用如何像Jetty Non Blocking IO servlet在内部处理数据库访问?
- 使用docker-compose.test自动testingdocker镜像:缺less环境variables
- 如何监视在Kubernetes上运行的Nodejs应用程序