2
是否可以指定docker compose用於變量替換的env文件?目前它默認爲「.env」,但我有不同的風格的撰寫文件,應該有不同的envs。指定env文件docker撰寫使用
是否可以指定docker compose用於變量替換的env文件?目前它默認爲「.env」,但我有不同的風格的撰寫文件,應該有不同的envs。指定env文件docker撰寫使用
你可以爲此使用繼承。如果您在設置環境時有一個「基礎」服務,則您的所有其他服務都可以繼承該服務。
例子:
version: "2"
services:
base:
env_file:
- my_env.txt
web:
extends:
service: base
image: foo
database:
extends:
service: base
image: foo-db
上面的例子在同一個文件中的一切,但你也可以拆分此成多個文件,其中base
服務將駐留在base.yaml
文件。您只需將file: base.yaml
添加到extends
部分即可。請參閱the documentation here。
我用這個方法來設置代理變量的所有容器。我有一個proxy.yaml
文件,它定義了一個proxy-app
服務,它從shell中獲取代理環境變量。我所有的真實服務都會擴展proxy-app
服務,從而繼承該服務的環境設置。
我發現這個https://docs.docker.com/compose/environment-variables/但這似乎需要env_file每個容器..是否有可能在全球範圍內設置了這樣整個泊塢窗,撰寫文件重寫默認.env? – Zuriar