dockefile 指令解釋

2021-10-06 09:42:32 字數 1431 閱讀 1462

dockefile 指令解釋

#除了注釋行之外的第一行,必須是 from *** (*** 是基礎映象) 

from centos

#映象維護者的資訊

maintainer zt [email protected]

#指定該容器執行時的使用者名稱和 uid,後續的 run 命令也會使用這面指定的使用者執行

user xx

workdir /a

workdir b #指定工作目錄,最終為/a/b ,通常很少使用workdir 而使用run cd代替

#設定容器掛載主機目錄 ,建立乙個可以從本地主機或其他容器掛載的掛載點,可以把主機的檔案對映到容器。

volume ["/dir_1", "/dir_2" ..]

#設定容器變數,常用於想容器內傳遞使用者密碼等 ,在容器執行之後可以用echo $變數名 檢視

env name zt

#run用於執行from 映象中的原生shell 命令

run yum install nginx

#拷貝本地(預設和dockerfile在乙個目錄)的檔案拷貝到容器映象中

copy src dest

copy check* /testdir/

#add自動解壓和dockerfile在乙個目錄的壓縮包到容器指定目錄。 解壓目錄如果不存在會自動建立

add nginx-1.10.3.tar.gz /usr/local/src/

#向外開放的埠,多個埠用空格做間隔,啟動容器時候-p 需要使用此端向外對映,可以是多個埠

expose 80 443

#執行的命令,每個 dockerfile 只能有一條,如果有多條則只有最後一條被執行

#如果在從該映象啟動容器的時候也指定了命令,那麼指定的命令會覆蓋

#dockerfile 構建的映象裡面的 cmd 命令,即指定的命令優先順序更高,dockerfile 的優先順序較低一些

cmd ["nginx"]

注意:

​ 寫dockerfile 的指令之前 ,可以先起乙個父映象的容器,在這個容器裡,先把操作執行一遍,如果沒有問題。就把操作寫成對應的dockerfile 指令即可。

通常dockefile 不可能一步編寫完成,可以把docker build 命令寫好放在乙個指令碼中。每完成一部分就可以執行一下改指令碼,確認是否有錯誤。

​ 在滿足業務需求的情況下,可以精簡映象。每條dockerfile中的指令都是映象中的一層,可以把多條功能相似的命令合併為一條,或者用&&連線起來。然後,可以把構建完成之後的不需要的命令相關軟體包都可以刪了。這樣也可以減小容器體積。 當然,可以選擇合適的更小的底層映象,如alpine。

​ 在寫dockerfile 時, 要把不經常變動的指令寫在前面 ,如env之類的,這樣的好處是可以提公升構建映象時的數度。當你第一次構建映象之後,第二次前n行沒有改,那麼前n行就不用重寫構建了。

dsp指令ixh DSP指令解釋

1.stm 8765,ar7 把立即數 存放到ar7 所指定的資料儲存單元中去 2.mpy 2,a 立即數 2與t 暫存器中的值相乘,並將乘積裝入累加器a中 3.mvpd table,ar1 把中table 標註的程式儲存器單元位址中的乙個字複製到由 ar4所指定的資料儲存單元中 去。4.bc ne...

彙編指令解釋

mov ax,30h ax 0x30 mov ax,30h ax中的內容是記憶體位址30h裡儲存的數值 bx 40f6h,記憶體位置40f6h 40f7h兩個位址中存放的數是22h 23h mov ax,bx 2223h傳送到ax中 mov ax,bx 40f6h傳送到ax中ldr r0,x 用於載...

Git指令解釋

mkdir learngit 在當前目錄下建立乙個資料夾 cd learngit 進入learngit pwd 顯示當前路徑 git init 將當前目錄變為git可以管理的目錄 git add hello.txt 提交變動到暫存區 git reset head readme.txt 撤銷暫存區的修...