容器镜像服务 SWR-编写高效的Dockerfile:合理调整COPY与RUN的顺序

时间:2024-06-28 17:20:35

合理调整COPY与RUN的顺序

将变化最少的部分放在Dockerfile的前面,这样可以充分利用镜像缓存。

示例中,源代码会经常变化,则每次构建镜像时都需要重新安装NPM模块,这显然不是希望看到的。因此可以先拷贝package.json,然后安装NPM模块,最后才拷贝其余的源代码。这样的话,即使源代码变化,也不需要重新安装NPM模块。

FROM node:7-alpine

WORKDIR /app

COPY package.json /app  
RUN npm install  
COPY . /app

ENTRYPOINT ["./entrypoint.sh"]  
CMD ["start"]
support.huaweicloud.com/bestpractice-swr/swr_bestpractice_0002.html