Docker Hub中99%镜像都是从这个基础镜像过来的FROM scratch,然后配置需要的软件和配置来进行的构建。
天天学习真累!
1️⃣Docker Hub中的Centos7为例
FROM scratch ADD centos-7-x86_64-docker.tar.xz / LABEL \ org.label-schema.schema-version="1.0" \ org.label-schema.name="CentOS Base Image" \ org.label-schema.vendor="CentOS" \ org.label-schema.license="GPLv2" \ org.label-schema.build-date="20201113" \ org.opencontainers.image.title="CentOS Base Image" \ org.opencontainers.image.vendor="CentOS" \ org.opencontainers.image.licenses="GPL-2.0-only" \ org.opencontainers.image.created="2020-11-13 00:00:00+00:00" CMD ["/bin/bash"]
官方的Centos镜像是一个轻量级的镜像,里面的命令都用不了
ifconfig、vim都找不到命令
2️⃣我们创建一个属于自己的Centos
1、编写DockerFile文件
FROM centos MAINTAINER libai<net_libai@163.com> #创建者的信息 ENV MYPATH /usr/local #环境变量 WORKDIR $MYPATH #工作目录 RUN yum -y install vim RUN yum -y install net-tools EXPOSE 80 #暴露端口 CMD echo $MYPATH CMD echo "--------end-------" CMD /bin/bash
2、通过DockerFile文件构建mycentos镜像
docker build -f mycentos -t mycentos:0.1 .
docker build -f dockerfile文件路径 -t 镜像名:[tag] .
最好就配置Docker镜像加速不然下载加载东西就太慢了
3、测试运行
ifconfig、vim命令都可以用了
3️⃣对比:之前的原生的centos
原生的centos是轻量级的镜像很多命令都用不了。
自己写的mycentos镜像可以随意添加命令。
4️⃣查看镜像的变更过程
docker history centos