1. 程式人生 > 其它 >Docker 之 Dockerfile 常用語法與實戰

Docker 之 Dockerfile 常用語法與實戰

1. 概述

老話說的好:超越別人,不如超越自我,每天比昨天的自己更強就好。

言歸正傳,之前聊了 Docker 的相關知識,今天來聊聊如何編輯 Dockerfile 指令碼,來建立我們自己的映象。

2. Dockerfile 相關知識

2.1 指令碼語法

FROM 映象名  // 以哪個映象為基礎

MAINTAINER zhuifengren   // 運維人員姓名

RUN mkdir test1  // 執行一個命令,建立目錄 test1

RUN touch test2  // 執行一個命令,建立檔案 test2

COPY test3 .   // 複製宿主機當前目錄檔案 test3 到 容器預設目錄

ADD test4.tar.gz .   // ADD命令也是複製宿主機檔案到容器預設目錄,但ADD會先解壓再複製,也可以寫一個網址,ADD會先從網址下載檔案再複製

ENTRYPOINT ["/bin/sh"]   // 執行命令,如果有多條,只會執行最後一條的,必然會被執行

2.2 映象建立命令

在 Dockfile 檔案的同級目錄,執行下面命令

#docker build -t 映象名稱 .

-t :是為生成的 Docker 映象取個名稱,名稱的格式為 映象名稱:版本號,只寫映象名稱則代表是最後的版本

最後的點 . :是在當前目錄尋找 Dockerfile 檔案

2.3 映象執行命令

#docker run 映象名稱

3. Dockerfile 實戰

3.1 概述

生成一個 Docker 映象,用於跑我們微服務元件中的 eureka。

3.2 將 my-eureka 工程打包

# maven clean package

3.3 編寫 Dockerfile 檔案

# vi Dockerfile

FROM java:8
ADD my-eureka-0.0.1-SNAPSHOT.jar my-eureka-0.0.1-SNAPSHOT.jar
ENTRYPOINT ["java","-jar","my-eureka-0.0.1-SNAPSHOT.jar"]

3.4 生成映象

將打包好的my-eureka-0.0.1-SNAPSHOT.jar 拷貝到 Dockerfile 的同級目錄

#docker build -t myeureka .

3.5 執行映象

#docker run -d -p 35000:35000 --name myeureka myeureka

這裡 eureka 使用的是 35000 埠。

4. 綜述

今天聊了一下 Dockerfile 相關的知識 ,希望可以對大家的工作有所幫助。

歡迎幫忙點贊、評論、轉發、加關注 :)

關注追風人聊Java,每天更新Java乾貨。

5. 個人公眾號

追風人聊Java,歡迎大家關注