我有graphql節點服務器。我可以在沒有docker的情況下在本地運行它。但是在創建服務器的碼頭容器並將容器端口與主機端口綁定後,這不起作用。即使在端口綁定後,docker上的節點服務器也無法在本地主機上訪問
這裏是我的Dockerfile代碼:
FROM node:boron-alpine
WORKDIR /app
COPY package.json /app
RUN npm install
COPY . /app
ENV SERVER_PORT 8080
EXPOSE 8080
CMD npm run build && npm start
我的節點服務器的代碼是這樣的:
app.listen(process.env.SERVER_PORT,'0.0.0.0')
console.log(`listening at ${port}`)
我跑碼頭工人用下面的命令:
docker run -it -p 8080:8080 nodeapi
這工作完全的NodeJS可以看到env SERVER_PORT導致它顯示
"listening at 8080"
在控制檯中。
但是,當我打開本地主機:8080這不起作用(該網站無法到達)。
我也曾嘗試運行泊塢窗命令
docker run -it -p 127.0.0.1:8080:8080 nodeapi
這不起作用
我使用在Windows 10最新版本泊塢窗工具箱
謝謝
這很好,謝謝。但有沒有辦法將它映射到本地主機? – scroobius