Node.js 创建要部署到产品环境的Docker容器
我在通过Jenkins构建应用程序和在外部tomcat上运行容器方面遇到了一些问题 Dockerfile: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
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,不知道集装箱港口