先看看基础镜像的dockerfile,它们是怎么创建出来的。

  • scratch
空镜像

  • alpine
FROM scratch
ADD rootfs.tar.xz /
CMD ["/bin/sh"]
  • debian
FROM scratch
ADD rootfs.tar.xz /
CMD ["bash"]
  • centos/fedora/ubuntu
FROM scratch
ADD centos-7.4.1708-docker.tar.xz /


LABEL name="CentOS Base Image" \
    vendor="CentOS" \
    license="GPLv2" \
    build-date="20170911"


CMD ["/bin/bash"]
  • 建议
docker是容器不同于虚拟机,运行之后只有应用程序在里面运行, 基础镜像只是为应用程序提供依赖包。应用程序是主,基础镜像是次。

如果没有必要,选择最小的依赖环境alpine,然后在这个基础上制作自己的镜像。


珍惜生命请勿杀害动物 01
珍惜生命请勿杀害动物 02
珍惜生命请勿杀害动物 03

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐