https://docs.docker.com/engine/reference/builder/
1.FROM
依赖于哪个image基础,尽量使用官方的image作为Base Image
2.LABEL
类似代码的注释,描述相关作者信息等
3.RUN
执行命令并创建新的image layer
复杂的run使用 / 换行,和&& 合并多条命令
4.WORKDIR
设置工作目录,类似cd的使用,workdir /test ,尽量使用绝对路径
5.ADD and COPY
add可以解压,大部分情况,copy优于add,添加远程文件/目录请使用curl或者wget
6.ENV
定义环境变量
7.CMD
设置容器启动后默认执行的命令和参数,如果docker run 指定了其他命令,CMD命令被忽略,定义多个CMD只执行最后一个
8.ENTRYPOINT
设置容器启动时运行的命令,不会被忽略一定会执行,可以写一个shell脚本作为entrypoint
9.EXPOSE
暴露端口
10.volume
数据储存,指定后不会随容器删除而删除