• 分类:【docker
  • 浏览【333】
  • 评论【0】
  • 更新【2018-1-26 12:35:58】

上一篇写到了如何在docker中运行nodejs,运行方式是在docker中安装了pm2来保证node服务宕机重启,这种方式更像是把docker当做虚拟机来使用。其实,既然使用了docker的话就可以不使用pm2来管理进程,因为docker自身可以充当守护进程,在node进程退出时进行重启。只要在启动docker容器时加上--restart=always参数即可。例如:docker run -d --restart=always -p 3000:3000 mynode:1 没有pm2如何开启多进程 使用pm2可以开启多node进程,并且自带负载均衡,但是有个限制,pm2可以开启的进程数是CPU

阅读全文
  • 分类:【docker
  • 浏览【349】
  • 评论【0】
  • 更新【2018-1-18 12:26:34】

首先看项目目录: 再看Dockerfile文件内容: # 以最新的node为基础镜像 FROM hub.c.163.com/library/node:latest # 工作目录为app WORKDIR /app # 拷贝当前所在项目根目录到app目录 COPY . /app # 全局安装pm2 RUN npm install pm2 -g EXPOSE 8081 #使用pm2启动nodejs,如果没有--no-daemon参数docker启动后就退出 CMD ["pm2-runtime", "dest/server.js", "--no-d

阅读全文
  • 分类:【docker
  • 浏览【665】
  • 评论【0】
  • 更新【2017-11-27 18:09:26】

Dockerfile FROM hub.c.163.com/public/nodejs:6.11.0 WORKDIR /app COPY . /app RUN npm install EXPOSE 3000 # CMD ["npm", "start"] ENTRYPOINT ["npm", "start"] docker ps: CONTAINER ID IMAGE COMMAND 59988bd90894 myfd "/bin/sh

阅读全文