Dockerfile是一個包含用於組合映像的命令的文本文檔。可以使用在命令行中調用任何命令。 Docker通過讀取Dockerfile
中的指令自動生成映像。
Dockerfile的基本結構
Dockerfile 一般分爲四部分:基礎鏡像信息、維護者信息、鏡像操作指令和容器啓動時執行指令,’#’ 爲 Dockerfile 中的註釋。
如下:
FROM mysql:latest
#作者信息
MAINTAINER tank "[email protected]"
ADD docker_start.sh /home/docker_start.sh
#啓動
ENTRYPOINT ["/home/docker_start.sh"]
Dockerfile文件說明
FROM:指定基礎鏡像,必須爲第一個命令
格式: FROM <image> FROM <image>:<tag> FROM <image>@<digest> 示例: FROM mysql:5.6 注: tag或digest是可選的,如果不使用這兩個值時,會使用latest版本的基礎鏡像
MAINTAINER: 維護者信息
格式: MAINTAINER <name> 示例: MAINTAINER Jasper Xu MAINTAINER [email protected] MAINTAINER Jasper Xu <[email protected]>
RUN:構建鏡像時執行的命令
RUN用於在鏡像容器中執行命令,其有以下兩種命令執行方式: shell執行 格式: RUN <command> exec執行 格式: RUN ["executable", "param1", "param2"] 示例: RUN ["executable", "param1", "param2"] RUN apk update RUN ["/etc/execfile", "arg1", "arg1"]