docker教程:从头基于空镜像scratch创建一个新的Docker镜像

本文介绍如何使用空镜像scratch构建轻量级Docker镜像。通过下载基础文件系统并使用Dockerfile进行编排,最终构建出符合业务需求且体积小巧的Docker镜像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从头基于空镜像scratch创建一个新的Docker镜像

我们在使用dockerfile构建镜像时,一种方式是使用预制镜像,这样可以省很多工作量,但问题是镜像会变得特别大,尤其是安装一些应用程序所需的依赖后,镜像的尺寸会更大。

在这里插入图片描述
如果我们的需求是在构建一个符合我们实际业务需求的Docker镜像的前提下,确保镜像尺寸尽可能的小,应该怎么做呢?

思路是使用空镜像scratch。

  • 获取scratch基础镜像
tar cv --files-from /dev/null | docker import - scratch
  • 新建一个文件夹,使用wget下载rootfs.tar.xz压缩包,包含了操作系统大部分的常用命令
wget -O rootfs.tar.xz https://github.com/debuerreotype/docker-debian-artifacts/raw/b024a792c752a5c6ccc422152ab0fd7197ae8860/jessie/rootfs.tar.xz
  • dockerfile编排(重中之重)
FROM scratch
LABEL maintainer="Chen Hanjiang"
ADD rootfs.tar.xz /
RUN apt-get update
WORKDIR /home/tarena
CMD /bin/bash
  • 执行构建命令
docker build  --squash -t nginx-from-scratch1.0 .
  • 运行
    docker run -it nginx-from-scratch1.0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值