【发布时间】:2017-10-25 22:04:37
【问题描述】:
我的 NodeJS 没有在 Docker 环境中运行。具体来说,我的 express 模块没有加载到 Docker 容器中。
这是我目前的设置:
server.js
var express = require('express')
var app = express();
app.get('/', function (req, res) {
res.end('Hello world');
})
var server = app.listen(9005, function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
})
Dockerfile
FROM stefanscherer/node-windows:7.6.0-nano
# Create app directory
RUN mkdir -p /app
WORKDIR /app
# Install app dependencies
COPY package.json /app/
RUN npm install
# Bundle app source
COPY . /app
CMD ["node","server.js"]
EXPOSE 9005
【问题讨论】:
-
您的问题陈述太宽泛了,您能否提供更详细的信息,即:如果有一些错误消息或类似的东西。
-
复制源代码后移动依赖项的安装,也许你还需要做
RUN cd /app; npm install而不是RUN npm install。 -
你确定你使用的基础镜像存在吗?从repo tags 开始,似乎只有
8.x和6.x版本。