dockerfile常用關(guān)鍵字詳細(xì)教程

Dockerfile 是用于自動化構(gòu)建 Docker 鏡像的腳本文件僧鲁,包含一系列指令和參數(shù)厕诡,用于描述鏡像的構(gòu)建與配置過程温艇。

以下是常用的 Dockerfile 關(guān)鍵字及其詳細(xì)教程:

FROM
FROM:指定基礎(chǔ)鏡像
語法:FROM <image>[:<tag>] [AS <name>]
示例:FROM ubuntu:20.04
說明:image 表示基礎(chǔ)鏡像名稱肠虽,tag 表示標(biāo)簽醉者,默認(rèn)為 latest刽辙,AS 用于定義別名 name窥岩,可以在后續(xù)指令中使用。
MAINTAINER
注意:從 Docker 1.13 開始宰缤,推薦使用 LABEL 指令代替 MAINTAINER颂翼。
語法:MAINTAINER <author name>
示例:MAINTAINER John Doe
說明:指定作者信息。
RUN
RUN:在鏡像中執(zhí)行命令
語法:RUN <command>
示例:RUN apt-get update && apt-get install -y curl
說明:在鏡像中執(zhí)行指定命令慨灭,如安裝軟件等朦乏。
CMD
CMD:指定容器啟動時要運(yùn)行的命令
語法:CMD <command> [arg1] [arg2] ...
示例:CMD ["nginx", "-g", "daemon off;"]
說明:定義容器啟動后要執(zhí)行的命令。如果 Dockerfile 中有多個 CMD 指令氧骤,只有最后一個會生效呻疹。
EXPOSE
EXPOSE:聲明鏡像需要監(jiān)聽的端口
語法:EXPOSE <port> [<port>/<protocol>] ...
示例:EXPOSE 80
說明:聲明容器在運(yùn)行時需要監(jiān)聽的端口。
ENV
ENV:設(shè)置環(huán)境變量
語法:ENV <key> <value>
示例:ENV NGINX_VERSION 1.21.0
說明:設(shè)置環(huán)境變量筹陵,可以在后續(xù)指令和命令中使用刽锤。
ADD
ADD:將本地文件或目錄復(fù)制到鏡像中
語法:ADD <src> <dest>
示例:ADD nginx.conf /etc/nginx/
說明:將指定的本地文件或目錄復(fù)制到鏡像中。如果 <src> 是一個 URL朦佩,Docker 會嘗試下載該 URL并思。
COPY
COPY:將本地文件或目錄復(fù)制到鏡像中
語法:COPY <src> <dest>
示例:COPY nginx.conf /etc/nginx/
說明:將指定的本地文件或目錄復(fù)制到鏡像中。
ENTRYPOINT
ENTRYPOINT:配置容器啟動命令
語法:ENTRYPOINT []
示例:ENTRYPOINT ["echo", "Hello world!"]
說明:設(shè)定容器的默認(rèn)啟動命令语稠,也可以搭配 CMD 指定容器啟動的默認(rèn)參數(shù)宋彼。
WORKDIR
WORKDIR:設(shè)置工作目錄
語法:WORKDIR /path/to/workdir
示例:WORKDIR /root
說明:設(shè)置一個工作目錄,下面的 CMD、RUN宙暇、ENTRYPOINT 等指令的執(zhí)行路徑都會在該目錄下進(jìn)行输枯。
VOLUME
VOLUME:聲明持久化目錄
語法:VOLUME /path/to/volume
示例:VOLUME /data
說明:聲明掛載到容器中的目錄,可以用來存儲數(shù)據(jù)等占贫。
USER
USER:指定運(yùn)行容器時的用戶名或 UID
語法:USER <user>[:<group>]
示例:USER nginx
說明:指定運(yùn)行容器時的用戶名或 UID桃熄,也可以指定組名。如果只指定用戶型奥,Docker 會自動為該用戶創(chuàng)建一個與用戶名相同的主組瞳收。
LABEL
LABEL:設(shè)置元數(shù)據(jù)
語法:LABEL <key>=<value>
示例:LABEL version="1.0"
說明:設(shè)置 Docker 鏡像的元數(shù)據(jù),如版本厢汹、描述螟深、維護(hù)者等信息。

以上是 Dockerfile 常用的關(guān)鍵字及其詳細(xì)教程烫葬,希望對您有所幫助界弧。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市搭综,隨后出現(xiàn)的幾起案子垢箕,更是在濱河造成了極大的恐慌,老刑警劉巖兑巾,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件条获,死亡現(xiàn)場離奇詭異,居然都是意外死亡蒋歌,警方通過查閱死者的電腦和手機(jī)帅掘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來堂油,“玉大人修档,你說我怎么就攤上這事〕剖” “怎么了萍悴?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長寓免。 經(jīng)常有香客問我癣诱,道長,這世上最難降的妖魔是什么袜香? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任撕予,我火速辦了婚禮,結(jié)果婚禮上蜈首,老公的妹妹穿的比我還像新娘实抡。我一直安慰自己欠母,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布吆寨。 她就那樣靜靜地躺著赏淌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪啄清。 梳的紋絲不亂的頭發(fā)上六水,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機(jī)與錄音辣卒,去河邊找鬼掷贾。 笑死,一個胖子當(dāng)著我的面吹牛荣茫,可吹牛的內(nèi)容都是我干的想帅。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼啡莉,長吁一口氣:“原來是場噩夢啊……” “哼港准!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起票罐,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤叉趣,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后该押,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡阵谚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年蚕礼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梢什。...
    茶點(diǎn)故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡奠蹬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出嗡午,到底是詐尸還是另有隱情囤躁,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布荔睹,位于F島的核電站狸演,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏僻他。R本人自食惡果不足惜宵距,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望吨拗。 院中可真熱鬧满哪,春花似錦婿斥、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至像鸡,卻和暖如春活鹰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背坟桅。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工华望, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人仅乓。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓赖舟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親夸楣。 傳聞我的和親對象是個殘疾皇子宾抓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內(nèi)容