x86架构服务器上使用docker部署nodejs项目

369 阅读1分钟

使用node16版本作为基础镜像

FROM node:16

更改镜像源为国内镜像源

RUN sed -i s/deb.debian.org/mirrors.ustc.edu.cn/g /etc/apt/sources.list

RUN sed -i s/security.debian.org/mirrors.ustc.edu.cn/g /etc/apt/sources.list

RUN apt-get clean

安装chromium到默认目录 (当前镜像用于debain系统,如果是ubuntu需要安装chromium-browser)

RUN apt-get update && apt-get install chromium chromium-driver chromium-l10n -y

修改源仓库地址

RUN npm config set registry "registry.npmmirror.com/"

RUN npm config set sharp_binary_host "npmmirror.com/mirrors/sha…"

RUN npm config set sharp_libvips_binary_host "npmmirror.com/mirrors/sha…"

安装pm2

RUN npm install pm2 -g --unsafe-perm

设置工作目录

WORKDIR /app

复制package.json和package-lock.json到工作目录

COPY package*.json ./

安装依赖

RUN npm install --unsafe-perm

复制应用程序代码到工作目录

COPY . .

暴露应用程序端口

EXPOSE 80

EXPOSE 443

启动项目

CMD ["pm2-runtime", "start", "pm2.k8s.config.json"]