Dockerfile 部署 nodejs
Posted Bigberg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dockerfile 部署 nodejs相关的知识,希望对你有一定的参考价值。
1.编写.dockerignore
构建镜像时,并不需要node_modules目录等内容,可以使用.dockerignore忽略一些文件
# .dockerignore Dockerfile node_modules/
2.编写Dockerfile文件
FROM mhart/alpine-node:7 LABEL maintainer "test-nodejs.com" COPY localtime /etc/localtime WORKDIR /app COPY package.json /app RUN apk --update add git \\ && apk --update add curl \\ && rm -rf /tmp/* /var/cache/apk/* \\ && npm install \\ && npm install -g pm2 COPY . /app EXPOSE 5000 HEALTHCHECK CMD curl --fail http://localhost:5000/fundation || exit 1 CMD ["pm2", "start", "pm2.json", "--no-daemon"]
- 设置WORKDIR
- 安装git,有些依赖需要从github获取,node基础镜像默认没有git
- node镜像默认也不带curl
- 安装pm2,该项目启动使用pm2
- 暴露端口5000
- HEALTHCHECH 健康检查
- pm2启动需要加 --no-daemon
以上是关于Dockerfile 部署 nodejs的主要内容,如果未能解决你的问题,请参考以下文章
docker & nodejs & mongodb Nodejs 应用简单的访问Mongodb 部署至Docker