我是docker的新手。我正在尝试在docker上运行一个简单的node应用程序。然而,我在docker端口发布方面遇到了问题。
Docker版本 - 18.03.0-ce, build 0520e24302
我的简单应用代码:
'use strict';
const express = require('express');
// Constants
const PORT = 8081;
const HOST = '0.0.0.0';
// App
const app = express();
app.get('/', (req, res) => {
res.send('Hello world\n');
});
app.listen(PORT, HOST);
console.log(`Running on http://${HOST}:${PORT}`);
我的 Docker 文件:
FROM node:carbon
# Create app directory
WORKDIR /usr/src/app
# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./
RUN npm install
# If you are building your code for production
# RUN npm install --only=production
# Bundle app source
COPY . .
EXPOSE 8081
CMD [ "npm", "start" ]
我的docker ps输出 - 0.0.0.0:8080->8081/tcp,爱抱大的
来自本地curl命令的输出 - 无法连接到localhost的8080端口:拒绝连接。