Running nuxt js application in Docker

烈酒焚心 提交于 2020-06-25 03:24:07

问题


I'm trying to run nuxt application in docker container. In order to do so, I created the following Dockerfile:

FROM node:6.10.2

RUN mkdir -p /app

EXPOSE 3000

COPY . /app
WORKDIR /app
RUN npm install
RUN npm run build

CMD [ "npm", "start" ]

However, when I build the image and run the container (docker run -p 3000:3000 <image-id>) I get nothing while hitting localhost:3000 in my browser. What could be the cause?


回答1:


The application inside Docker container by default is accepting network traffic onhttp://127.0.0.1:3000. This interface does not accept external traffic so no wonder that it does not work. In order to make it work we need to set HOST environmental variable for nuxt app to 0.0.0.0 (all ip addresses). We can do this either in Dockerfile, like this:

FROM node:6.10.2

ENV HOST 0.0.0.0

# rest of the file

or in package.json in the script's "start" command:

"scripts": { "start": "HOST=0.0.0.0 nuxt start" ...}

Or any other way that will make the nuxt application to listen elsewhere than on localhost inside container only.



来源:https://stackoverflow.com/questions/43746782/running-nuxt-js-application-in-docker

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!