Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 创建要部署到产品环境的Docker容器_Node.js_Reactjs_Docker - Fatal编程技术网

Node.js 创建要部署到产品环境的Docker容器

Node.js 创建要部署到产品环境的Docker容器,node.js,reactjs,docker,Node.js,Reactjs,Docker,我在通过Jenkins构建应用程序和在外部tomcat上运行容器方面遇到了一些问题 Dockerfile: FROM node:10.16.3 RUN ls -al WORKDIR /app COPY /package/repo/package.json /app/package.json RUN npm install COPY /package/repo /app RUN npm run build EXPOSE 8080 CMD ["npm", "start] npm开始调用node

我在通过Jenkins构建应用程序和在外部tomcat上运行容器方面遇到了一些问题

Dockerfile:

FROM node:10.16.3
RUN ls -al
WORKDIR /app
COPY /package/repo/package.json /app/package.json
RUN npm install
COPY /package/repo /app
RUN npm run build

EXPOSE 8080
CMD ["npm", "start]
npm开始调用node server.js

server.js:

const express = require('express');
const app = express();
const port = 8080;

app.get('/', (req, res) => {
  res.send('Hello World!');
});


app.listen(port, () => {
  console.log(`Example app listening on port ${port}!`);
  console.log(__dirname+'/client/build/index.html');

});

app.listen(port, () => console.log(`Example app listening on port ${port}!`));

docker build-t测试。 docker运行测试


我正在尝试使用localhost:8080访问容器,但是,每当我访问该端口时,都会发现错误not found。有没有一步我错过了。抱歉,我是docker的新手。

EXPOSE不会准确发布端口。您应该使用-p标志运行容器,以将端口从容器映射到主机系统。请参阅。

您需要将端口从计算机映射到容器。为此使用p标志

docker运行测试-p 8080:8080 一般来说,语法是:

docker run-p:
你可以在

中阅读更多内容,非常感谢,我在做docker run-p,不知道集装箱港口