FROM语法
在创建镜像之前,需要指定一个基础镜像,然后在此基础上再进行延申,扩展。FROM的使用语法如下:
FROM Base_Image_Name:TAG
在构建镜像时,需要注意以下几个原则:
1、官方镜像优于非官方镜像(安全、稳定)
2、需要固定基础镜像版本的TAG,而不是每次都使用latest
3、功能满足,使用最小的镜像
在基础镜像上进行延申时,需要运行一系列的命令来下载一些配置文件,完成运行环境的搭建。在dockerfile中是通过RUN命令来执行相应的shell命令。如果是每一个操作都用一个RUN命令来执行,则镜像就会有很多分层。最后会造成镜像体积比较大。例如:
RUN apt-get update
RUN apt-get install -y wget
RUN mv <file> new_dir
....
而以上命令可以通过一个RUN命令执行,各个命令之间用<&& >分割:
RUN apt-get update && \
apt-get install -y wget && \
mv <file> new_dir
用一个RUN命令执行后,会把这一个RUN命令之下的脚本放在一个层。