首页 > 解决方案 > 无法在本地运行 docker 映像

问题描述

我有一个简单的节点 JS 应用程序,如下所示

const express = require('express')
const app = express()

app.get('/', (req, res) => res.send('Hello there man!'))

app.listen(3000, () => console.log('Example app listening on port 3000!'))

所以我有一个 docker 文件,如下所示

FROM node:latest

# Create app directoryy
RUN mkdir -p /usr/src/app/
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 /usr/src/app/

RUN npm install
# If you are building your code for production
# RUN npm install --only=production

# Bundle app source
COPY . .

EXPOSE 3000
CMD [ "node", "sampleApp.js" ]

基本上我 docker build 并运行它。

它在向我展示

C:\Users\adrlee\Desktop\oracle\wercker\nodeJS_wercker_k8 - Copy>docker run 669bf025e027
Example app listening on port 3000!

但是当我去本地主机时,我无法访问它。有趣的是,我上周试过了,效果很好。有任何想法吗?

PS:我是码头工人的菜鸟。

在此处输入图像描述

标签: docker

解决方案


您没有使用 -p 选项将容器端口 3000 映射到 localhost 上的端口。


推荐阅读