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,歡迎大家關注