2016-11-24 33 views
0

在Dockerfile中我試圖在沒有運氣的文件中捕獲構建arg變量。捕獲文件中的Dockerfile變量

現在我正在做的事情,如:

RUN echo '\n\ 
enableSemantics("$DOMAIN_NAME");\n\ 
include_once "$IP/LocalSettings.local.php"; ' >> /var/www/w/LocalSettings.php 

,我想,以取代DOMAIN_NAME $ DOMAIN_NAME建立ARG(但不是$ IP,這是不...)

什麼我應該改變嗎?

回答

1

嘗試反轉行情:

ARG DOMAIN_NAME 
RUN echo "\n\ 
enableSemantics('$DOMAIN_NAME');\n\ 
include_once '$IP/LocalSettings.local.php'; " >> /var/www/w/LocalSettings.php 

我不知道確切的原因,爲什麼這個工作,但最有可能,多克爾它是如何解決的變量,即它忽略了雙引號之間的變量。你

也可以跳過這樣的$\$

+0

感謝。有效。實際上,對於這種特定情況,我必須做一些更改:RUN echo「\ n \ enableSemantics('$ {DOMAIN_NAME}'); \ n \ include_once \」\ $ IP/LocalSettings.local.php \「 ;「>> /var/www/w/LocalSettings.php –