2016-10-10 47 views
4

根據this comment,多行變量支持與docker compose如何將多行變量傳遞給碼頭集裝箱?

environment: 
    KEY: |- 
    line1 
    line2 

然而,當我在容器中執行echo $KEY,它已替換爲空格換行符:

line1 line2

上午我遺漏了什麼?我的碼頭版本是1.12.1。

+0

如果你不在環境變量上使用雙引號,'echo'總是在Linux/Unix下執行。這就是爲什麼你應該總是在他們周圍使用引號(U&L網站上有很多與此相關的帖子,這與使用YAML無關:鍵映射條目的KEY值肯定有換行符) – Anthon

回答

4

YAML語法是正確的。 shell命令是不是:字符串以換行符

echo "$KEY"

打印。

2

一個前兩天有同樣的問題,並通過解決它:

KEY: "line1\nline2" 

希望在你的情況以及幫助。

+0

不幸的是,沒有。結果仍寫在一行上(如上)。 – giraff

+0

梅,甚至包裹在引號中? – notion

+0

是............等等...不!你是個天才! :-)你想把它添加到你的答案以備將來參考嗎?其實我上面的語法在使用'echo「$ KEY」'時也是如此。 – giraff