记录使用docker部署egg.js项目
当egg项目开发完, 部署在云端服务器的主要工作在于编写Dockerfile文件.
详细内容如下:
# 选择比较小的node包
FROM node:16-alpine
# 切换到工作目录
WORKDIR /data
# 设置环境charset
ENV LANG=en_US.UTF-8
# 设置timezone
ENV LANGUAGE=en_US.UTF-8
RUN npm config set unsafe-perm true \
&& npm install -g egg-scripts \
&& apk add --no-cache tzdata \
&& ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone
# 将全部文件拷贝到docker容器的/data下
COPY . /data/
# 使用镜像加速安装package.json dependencies
RUN npm i --registry=https://registry.npmmirror.com
# 暴露所需端口
EXPOSE 7001
# 启动项目命令
CMD [ "npm", "start ]