dockerfile是docker的指令碼指令,分層寫,每一條指令構建一層
以tomcat為例子:
在/usr/local/tomcat 建立tomcat資料夾
vi dockerfile 建立文字,在裡面寫入docker命令即可
from tomcat:9-jre8 指定基礎映象
寫完之後 構建映象
docker build -t 標籤名 . 映象上下文路徑
docker build -t myshop .
然後docker images查詢映象是否被建立
docker run -p 8080:8080 myshop 啟動容器,看是否成功
解釋一下命令的作用:
from所有映象必須要有,而且在最開始
run 執行程式命令
workdir 指定路徑為工作目錄,這個很重要。因為不指定的話run每次都是從預設的目錄開始執行,如果兩個run有目錄變更,就會導致路徑銜接不上去
映象預設工作目錄在**呢?
容器啟動的時候切換到的目錄就是工作目錄
expose 暴露服務埠,好處是啟動後程式設計師能直接看見這個埠,但不是因為有了這個ecpose這個埠就會被開啟,只有本身被開啟,才會開啟
左邊是上下文路徑 右邊是映象路徑
add 和copy類似,但是add url可以拷貝乙個鏈結 add *.gz 複製和解壓縮
因此add不明白語義
上下文:
docker build -t . 會講當前目錄整個打包壓縮傳送給docker伺服器。伺服器解壓獲得檔案,而這個目錄就是上下文目錄
上下文環境中的abc.txt,也就是說你必須把檔案放在你構建dockerfile的目錄下,不然沒有辦法複製到。
另外注意虛懸映象問題:
docker pull 和 build 都會觸發虛懸映象問題,新舊映象同名,新的映象會取代舊的映象,舊的映象名字為none
容器啟動:
docker run -p 8080:8080 tomcat 將宿主機的8080埠對映到容器的8080埠上
docker安裝部署及定製映象
二 定製映象 docker是乙個開源的應用容器引擎,屬於linux容器的一種封裝,是目前最流行的linux容器解決方案。docker可以為任何應用建立乙個輕量級 可移植的容器,然後容器可以執行在任何安裝有docker的平台上。新增docker官方源 yum config manager add re...
Dockerfile 定製映象
docker 是乙個文字檔案,包含一條條指令 以構建nginx映象為例,這次我們用docker去構建定製映象 建立目錄並建立dockerfile mkdir mynginx cd mynginx touch dockerfile其內容有 from nginx run echo usr share n...
Dockerfile定製映象
映象定製實質就是定製每一層所新增的配置 檔案。dockerfile就是乙個指令碼來構建和定製映象,把每一層的修改 安裝 構建 操作都寫入指令碼。以此來解決體積 映象構建透明等問題。dockerfile是乙個文字檔案,包含一條條指令 instruction 每一條指令構建一層,每一條指令的內容,就是描...