2015-04-02 83 views
4

我的目標是從相同的源代碼構建幾個不同的碼頭圖像。使用不同的碼頭文件從源目錄中構建碼頭圖像

我有我的./src文件夾(node.js項目)。 裏面./src我有first.dockerfile和第二個dockerfile。

爲建設我用這個標準的命令行項目

sudo docker build -t doronaviugy/myproject . 

這適用於使用默認Dockerfile

沒有問題,我想從一個特定的構建它dockerfile使用line

sudo docker build -t doronaviguy/myproject - < first.docker 

此行可行,但現在路徑不會被複制到圖像中

#Inside the Dockerfile 
ADD . /src 

我想我明白如何指定一個dockerfile參數,但我需要指定一個direcotry參數在docker鏡像內複製。

非常感謝。

回答

8

由於碼頭工人1.5,你可以使用-f參數選擇Dockerfile使用如:

docker build -t doronaviugy/myproject -f dockerfiles/first.docker .

如果使用標準輸入來建立你的圖像(- < first.docker語法),你不會有構建上下文,因此您將無法使用引用本地文件的COPYADD指令。

如果您必須使用較舊版本的Docker,則在調用docker build之前,需要使用一些腳本將特定的Docker文件複製到構建上下文的根目錄中的Dockerfile

+0

謝謝,我沒有嘗試使用-f參數,但沒有成功,然後我注意到我不得不將我的docker版本升級到1.5。 – 2015-04-02 09:43:17

相關問題