這個DockerFile是一個制作鏡像的配方,用於描述這些文件,環境,和命令。在Linux、macOS的窗口終端中,或者windows的命令提示符下,執行下面的步驟,切記如果你使用的是macOS或者windows,你依然創建的是運行在Linux下的映像。
$ mkdir mydockerbuild
PS:構造鏡像所需的所有東西都放在這個文件夾中。
$ cd mydockerbulid
$ nano Dockerfile
From docker/whalesay:lastet
PS:這個From 關鍵字告訴Docker你的映像是基於哪個映像。
RUN apt-get -y update && apt-get install -y fortunes
這個whalesay映像是基於Ubuntu的,使用apt-get
進行安裝包。這兩個命令用來刷新映像可用的包列表並安裝fortunes程序,用來輸出名言警句。
CMD /usr/games/fortune -a | cowsay
FROM docker/whalesay:latest RUN apt-get -y update && apt-get install -y fortunes CMD /usr/games/fortune -a | cowsay
當你mydockerbulid目錄,使用docker bulid命令創建image,-t 參數來給你映像一個標簽,因此之後你可以更容易地運行它。不要忘記.命令,這表示該命令是在當前命令來查找Dockerfile文件。
PS:使用docker images 就可以看到我們新創建的映像。
$ docker build -t docker-whale . Sending build context to Docker daemon 2.048 kB ...snip... Removing intermediate container cb53c9d09f3b Successfully built c2c3152907b5
Sending build context to Docker daemon 2.048 kB
Step 1 : FROM docker/whalesay:latest ---> 6b362a9f73eb
PS:執行每個步最後,將會打印ID,Dockerfile每一行對應於映像的每一圖層,這個ID是每一步驟創建的圖層。
docker run docker-whale