docker-镜像
镜像
009 - 最小的镜像
010 - base 镜像
011 - 镜像的分层结构
012 - 构建镜像
013 - Dockerfile 构建镜像
014 - 镜像的缓存特性
015 - 调试 Dockerfile
016 - Dockerfile 常用指令
017 - RUN vs CMD vs ENTRYPOINT
018 - 镜像命名的最佳实践
019 - 使用公共 Registry
020 - 搭建本地 Registry
021 - Docker 镜像小结
最小的镜像
hello-world - 最小的镜像
hello-world 是 Docker 官方提供的一个镜像,通常用来验证 Docker 是否安装成功。
我们先通过 docker pull 从 Docker Hub 下载它
用 docker images 命令查看镜像的信息

hello-world 镜像竟然还不到 2KB!
通过 docker run 运行。

其实我们更关心 hello-world 镜像包含哪些内容。
Dockerfile 是镜像的描述文件,定义了如何构建 Docker 镜像。Dockerfile 的语法简洁且可读性强,后面我们会专门讨论如何编写 Dockerfile。
hello-world 的 Dockerfile 内容如下:

只有短短三条指令。
FROM scratch
此镜像是从白手起家,从 0 开始构建。
COPY hello /
将文件“hello”复制到镜像的根目录。
CMD ["/hello"]
容器启动时,执行 /hello
镜像 hello-world 中就只有一个可执行文件 “hello”,其功能就是打印出 “Hello from Docker ......” 等信息。
/hello 就是文件系统的全部内容,连最基本的 /bin,/usr, /lib, /dev 都没有。
hello-world 虽然是一个完整的镜像,但它并没有什么实际用途。
通常来说,我们希望镜像能提供一个基本的操作系统环境,用户可以根据需要安装和配置软件。这样的镜像我们称作 base 镜像。

浙公网安备 33010602011771号