Docker多阶段镜像构建Dockerfile脚本示例:构建nodejs前端项目

Posted a772304419

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker多阶段镜像构建Dockerfile脚本示例:构建nodejs前端项目相关的知识,希望对你有一定的参考价值。


# 声明镜像为node:12.16.1
FROM node:12.16.1

# 声明工作目录
WORKDIR /gva_web/

# 拷贝整个web项目到当前工作目录
COPY . .

# 通过npm下载cnpm
RUN npm install -g cnpm --registry=https://registry.npm.taobao.org

# 使用cnpm进行安装依赖
RUN cnpm install || npm install

# 使用npm run build命令打包web项目
RUN npm run build
# ===================================================== 以下为多阶段构建 ==========================================================

# 声明镜像为nginx:alpine, alpine 镜像小
FROM nginx:alpine

# 镜像编写者及邮箱
LABEL MAINTAINER="SliverHorn@sliver_horn@qq.com"

# 从.docker-compose/nginx/conf.d/目录拷贝my.conf到容器内的/etc/nginx/conf.d/my.conf
COPY .docker-compose/nginx/conf.d/my.conf /etc/nginx/conf.d/my.conf

# 从第一阶段进行拷贝文件
COPY --from=0 /gva_web/dist /usr/share/nginx/html

# 查看/etc/nginx/nginx.conf文件
RUN cat /etc/nginx/nginx.conf

# 查看 /etc/nginx/conf.d/my.conf
RUN cat /etc/nginx/conf.d/my.conf

# 查看 文件是否拷贝成功
RUN ls -al /usr/share/nginx/html



以上是关于Docker多阶段镜像构建Dockerfile脚本示例:构建nodejs前端项目的主要内容,如果未能解决你的问题,请参考以下文章

谈谈 Docker 镜像多阶段构建

使用 Docker 开发 - 使用多阶段构建镜像

Docker多阶段构建最佳实践

Docker多阶段构建实战(multi-stage builds)

dockerfile 多FROM

docker-编写dockerfile最佳实践