开发者社区> 问答> 正文

docker执行node的image后,端口号不存在,container状态为stopped

请问,
docker run image后,通过docker ps -l查看运行情况,结果没看到端口号(ports为空)
查看日志:

[root@xxx ~]# docker logs --since 30m some-app
> star@1.0.0 start /app
> egg-scripts start --daemon --title=egg-server-star
[egg-scripts] Starting egg application at /app
[egg-scripts] Run node /app/node_modules/egg-scripts/lib/start-cluster {"title":"egg-server-star","baseDir":"/app","framework":"/app/node_modules/egg"} --title=egg-server-star
[egg-scripts] Save log file to /root/logs
[egg-scripts] Wait Start: 1...
[egg-scripts] egg started on h防止ttp://127.0.0.1:7001


docker并没有启动起来
求助,请大侠帮忙
附上dockerfile
FROM node:latest

ENV PROJECT_DIR=/app
WORKDIR $PROJECT_DIR

COPY package.json $PROJECT_DIR
RUN npm install
COPY . $PROJECT_DIR

ENV MEDIA_DIR=/media \
    NODE_ENV=production \
    APP_PORT=7001

VOLUME $MEDIA_DIR
EXPOSE $APP_PORT
HEALTHCHECK CMD curl --fail http://localhost:$APP_PORT || exit 1

RUN ["chmod", "+x", "./entrypoint.sh"]
ENTRYPOINT ["./entrypoint.sh"]
CMD ["start"]


展开
收起
沈先森 2018-11-06 13:43:13 2645 0
1 条回答
写回答
取消 提交回答
  • Redocker执行node的image后,端口号不存在,container状态为stopped
    原因找到了,是因为eggjs的daemon导致的
    --daemon 是否允许在后台模式,无需 nohup。若使用 Docker 建议直接前台运行。
    2018-11-06 14:50:33
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载