阅读

Dockerfile 源镜像精简

software  2022-10-14 11:00

1、引用源镜像,删除不需要的文件

2、利用 COPY 方法打包成新的镜像


示例 Dockerfile:

FROM debian

# 安装多个软件生成新的镜像
# RUN apt install ***
# 下载 mysql
RUN cd /tmp && wget https://dev.mysql.com/xxx/mysql-community-server-xxx.deb


构建新的镜像:test

docker build -t test .

通过镜像 test 删除多余的文件后再构建新的镜像,发现大小并无变化

FROM test

# 删除 mysql
RUN /tmp/mysql-community-server-xxx.deb

可通过 COPY 方法,此时镜像已经少了 mysql-community-server-xxx.deb 的空间大小

FROM test as first

# 删除 mysql
RUN /tmp/mysql-community-server-xxx.deb

# 从源镜像构建新的镜像
FROM debian

# 将 test 删除文件后的整个系统文件覆盖源镜像后生成新的镜像
COPY --from=first / /


广告

【腾讯云】618云上GO!云服务器限时秒杀,1核2G首年95元!
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。

广告

618优惠礼包限时领取,更有2000元飞天会员礼包等你来拿
上云优惠聚集地,云小站专属代金券可叠加产品折扣使用