Docker構(gòu)建時(shí)間參數(shù)

2018-06-15 14:13 更新

構(gòu)建時(shí)間參數(shù)

Docker可以為docker build使用--build-arg選項(xiàng)為特定的環(huán)境變量定義構(gòu)建時(shí)間值,這些變量不會(huì)保留在中間或最終映像中。這些變量必須在具有默認(rèn)值的Dockerfile的ARG指令中指定。您可以使用“生成參數(shù)(Build args)”字段在Docker運(yùn)行配置中配置構(gòu)建時(shí)參數(shù)。

例如,您可以使用構(gòu)建時(shí)參數(shù)來(lái)構(gòu)建具有特定版本的PostgreSQL的映像。為此,請(qǐng)將ARG指令添加到Dockerfile的開(kāi)頭:

ARG PGTAG=latest FROM postgres:$PGTAG

如果您不將它重新定義為構(gòu)建時(shí)參數(shù),則此情況下的PGTAG變量將默認(rèn)為latest。所以默認(rèn)情況下,這個(gè)Dockerfile會(huì)生成一個(gè)包含最新PostgreSQL版本的圖像。但是,您可以使用“構(gòu)建參數(shù)(Build Args)”對(duì)話框重新定義PGTAG變量。

Docker構(gòu)建時(shí)間參數(shù)

在前面的屏幕截圖中,PGTAG設(shè)置為9,這將指示Docker拉動(dòng)postgres:9。在部署此運(yùn)行配置時(shí),它將構(gòu)建一個(gè)圖像并使用PostgreSQL版本9運(yùn)行該容器。要檢查此問(wèn)題,請(qǐng)?jiān)谌萜鲀?nèi)部執(zhí)行postgres --version,并查看輸出:它應(yīng)該是postgres (PostgreSQL) 9.6.6或一些更高版本。

如果展開(kāi)“命令預(yù)覽(Command preview)”字段,則會(huì)看到以下選項(xiàng)已添加到該docker build命令中:

--build-arg PGTAG=9
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)