一 環境變量概述
Compose支持在docker-compose執行命令的文件夾中,名爲.env的環境變量配置文件聲明默認環境變量。
二 定義變量
2.1 語法規則
- Compose建議env文件中的每一行都是VAR=VAL格式。
- 以#開頭的行將做爲註釋處理並被忽略。
- 空行被忽略。
- 沒有特殊的引號處理。
2.2 變量定義
COMPOSE_PROJECT_NAME
意義:設置項目名稱,啓動時,此值將與服務名稱一塊兒添加到容器中,如項目名稱爲myapp,它包括兩個服務db和web,而後開始撰寫名爲容器 myapp_db_1和myapp_web_1分別。
參數:可選,可自定義名稱。
默認值:默認爲當前執行命令所在目錄名。
舉例:COMPOSE_PROJECT_NAME=myapp
COMPOSE_FILE
意義:指定Compose文件的路徑。
參數:可選,可指定引用外部yml配置,支持由:分隔符分隔的多個Compose文件。
默認值:默認Compose將查找當前目錄中的docker-compose.yml文件,而後查找每一個父目錄,直到找到該名稱的文件。
舉例:COMPOSE_FILE=docker-compose.yml:docker-compose.prod.yml
COMPOSE_API_VERSION
意義:Docker API僅支持來自報告特定版本的客戶端的請求,若提示client and server don't have same version,則表示使用版本不一致,能夠經過設置此環境變量來設置版本值以匹配服務器版本。
參數:
默認值:
舉例:
DOCKER_HOST
意義:設置docker守護程序的URL 。
參數:
默認值:unix:///var/run/docker.sock
舉例:
DOCKER_TLS_VERIFY
意義:啓用與docker守護程序的TLS通訊。
參數:
默認值:
舉例:
DOCKER_CERT_PATH
意義:配置路徑ca.pem,cert.pem以及key.pem用於TLS驗證文件。
參數:
默認值:~/.docker
舉例:
COMPOSE_HTTP_TIMEOUT
意義:配置在Compose認爲失敗以前容許掛起對Docker守護程序的請求的時間(以秒爲單位)。
參數:
默認值:60秒
舉例:
COMPOSE_TLS_VERSION
意義:配置使用哪一個TLS版本用於與docker守護程序進行TLS通訊。
參數:支持的值是:TLSv1,TLSv1_1,TLSv1_2。
默認值:TLSv1
舉例:
COMPOSE_CONVERT_WINDOWS_PATHS
意義:在卷定義中啓用從Windows樣式到Unix樣式的路徑轉換。Windows上的Docker Machine和Docker Toolbox的用戶應始終設置此項。
參數:支持的值:true或1啓用false或0禁用。
默認值:0
舉例:
COMPOSE_PATH_SEPARATOR
意義:定義多Compose配置文件的分隔符。
參數:可選,可自定義名稱。
默認值::
舉例:
COMPOSE_FORCE_WINDOWS_HOST
意義:
參數:
默認值:
舉例:
COMPOSE_IGNORE_ORPHANS
意義:定義Compose是否嘗試檢測項目的孤立容器。
參數:支持的值:true或1啓用false或0禁用。
默認值:
舉例:
COMPOSE_PARALLEL_LIMIT
意義:設置Compose能夠並行執行的操做數限制。
參數:不能低於2的數值
默認值:64
舉例:
COMPOSE_INTERACTIVE_NO_CLI
意義:定義Compose是否使用Docker CLI進行交互run和exec操做。
參數:支持:true或1啓用false或0禁用,Windows不支持此項。
默認值:
舉例: