Dockerfile
中以#
開頭的行全爲註釋行code
FROM <image>:<tag>
table
指定基礎鏡像
MAINTAINER <name>
容器
指定維護者信息
RUN <command>
或 RUN ["executable file", "parameter1", ...]
基礎
在當前鏡像中執行指定命令,執行的結果會被鏡像保存
CMD
用法相似於RUN
,用於指定Docker容器啓動時執行的命令。Dockerfile中只能有一個CMD,而且此CMD命令會被啓動Docker容器時指定的參數覆蓋變量
LABEL <key>=<value> <key>=<value>
配置
爲Docker鏡像指定meta信息,同時會覆蓋基礎鏡像中的meta信息
EXPOSE <port> <port> ....
file
指定暴露的端口號
ENV <key>=<value>
或者 ENV <key> <value>
meta
指定鏡像的*環境變量*,會被鏡像保存下來
ADD <src> <des>
command
拷貝主機的文件或者目錄到鏡像中。此命令會**自動解壓tar文件**
COPY <src> <des>
和ADD
命令相似,但此命令不會自動解壓tar文件im
ENTRYPOINT <command>
或 ENTRYPOINT ["executable file", "parameter1", ...]
配置容器啓動後啓動的命令,相似`CMD`,但此命令**不會被啓動Docker容器時指定的參數覆蓋**
VOLUME ["/data/"]
指定一個能夠從主機或者其餘容器掛載的**掛載點**
USER username
指定後續操做所用的**用戶名**
WORKDIR <dir path>
爲後續操做指定工做目錄
ONBUILD <command>
指定當此鏡像做爲基礎鏡像時指定的命令,會在`FROM`以後執行