国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - 服務器知識 - 詳解Docker Compose 中可用的環境變量問題

詳解Docker Compose 中可用的環境變量問題

2021-03-13 18:04kikajack 服務器知識

Compose 的多個部分在某種情況下處理環境變量。這篇文章主要介紹了Docker Compose 中可用的環境變量問題,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

Compose 的多個部分在某種情況下處理環境變量。本教程可以幫助你找到所需的信息。

1. 替換Compose文件中的環境變量

可以使用 shell 中的環境變量填充 Compose 文件中的值:

?
1
2
web:
 image: "webapp:${TAG}"

更多信息請參考 Compose 文件手冊中的 Variable substitution 章節。

2. 設置容器中的環境變量

可以通過 environment 關鍵字設置服務容器中的環境變量,就跟使用 docker run -e VARIABLE=VALUE ... 一樣:

?
1
2
3
web:
 environment:
 - DEBUG=1

3. 將環境變量傳遞到容器

在使用 environment 關鍵字時不賦值,就可以將 shell 中的環境變量傳遞給服務容器,就跟使用 docker run -e VARIABLE ... 一樣:

?
1
2
3
web:
 environment:
 - DEBUG

容器中的 DEBUG 變量的值從運行 Compose 的 shell 中的同名變量中獲取。

4. “env_file”配置選項

可以通過 env_file 命令使用外部文件將多個環境變量傳遞到服務容器,就跟使用 docker run --env-file=FILE ... 一樣:

?
1
2
3
web:
 env_file:
 - web-variables.env

5. 使用 ‘docker-compose run'設置環境變量

就像 docker run -e 命令一樣,可以使用 docker-compose run -e 設置一次性容器上的環境變量:

?
1
docker-compose run -e DEBUG=1 web python console.py

也可以通過從 shell 中傳遞一個變量,而不是直接賦值:

?
1
docker-compose run -e DEBUG web python console.py

容器中的 DEBUG 變量的值從運行 Compose 的 shell 中的同名變量中獲取。

6. “.env”文件

可以在名為.env 的環境文件 中為 Compose 文件中引用的任何環境變量設置默認值,或者用于配置 Compose:

?
1
2
3
4
5
6
7
8
$ cat .env
TAG=v1.5
 
$ cat docker-compose.yml
version: '3'
services:
 web:
 image: "webapp:${TAG}"

運行 docker-compose up 時,上面定義的 web 服務使用 webapp:v1.5 鏡像??梢酝ㄟ^config 命令 將應用程序的配置信息打印到終端來驗證:

?
1
2
3
4
5
6
$ docker-compose config
 
version: '3'
services:
 web:
 image: 'webapp:v1.5'

shell 中的值優先于 .env 文件中指定的值。如果在 shell 中將 TAG 設置為不同的值,則鏡像中將使用該值:

?
1
2
3
4
5
6
7
$ export TAG=v2.0
$ docker-compose config
 
version: '3'
services:
 web:
 image: 'webapp:v2.0'

當在多個文件中設置相同的環境變量時,以下是 Compose 用于選擇要使用的值的優先級:

  • Compose 文件
  • Environment 文件
  • Dockerfile
  • 變量未定義

在下面的例子中,我們在 Environment 文件和 Compose 文件上設置了相同的環境變量:

?
1
2
3
4
5
6
7
8
9
10
11
12
$ cat ./Docker/api/api.env
NODE_ENV=test
 
$ cat docker-compose.yml
version: '3'
services:
 api:
 image: 'node:6-alpine'
 env_file:
  - ./Docker/api/api.env
 environment:
  - NODE_ENV=production

運行容器時,在 Compose 文件中定義的環境變量優先。

?
1
2
3
4
$ docker-compose exec api node
 
process.env.NODE_ENV
'production'

只有在 environment env_file 沒有 Docker Compose 條目時,Dockerfile 中的任何 ARG ENV 設置才會評估(evaluate)。

NodeJS 容器的細節

如果你有腳本的 package.json 條目像 NODE_ENV=test node server.js 一樣啟動,那么這將覆蓋 docker-compose.yml 文件中的任何設置。

7. 使用環境變量配置 Compose

有幾個環境變量可用來配置 Docker Compose 命令行行為。它們以 COMPOSE_ 或 DOCKER_ 開頭,并記錄在CLI 環境變量中

8. 通過 link 創建環境變量

在第一版 Compose 文件中使用 links 選項時,會為每個鏈接創建環境變量。它們記錄在 Link環境變量參考 中。

但是,這些變量已被棄用。link 改為為主機創建別名。

原文地址

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/kikajack/article/details/79751026

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲 欧美 精品 | 一区二区三区日本 | 欧美日韩一二区 | 欧美精品久久久 | 久久国产精品视频 | 黄视频免费 | 成人三级视频 | 久久久久久免费精品 | 国产精品一区二 | 国产精品久久久久久久久 | 亚洲免费视频在线 | 亚洲 欧美 国产 制服 动漫 | 亚洲一区二区中文字幕 | 亚洲激情都市 | 精品日韩| 黄色a视频 | 精品一区二区三区中文字幕 | 国产成人免费高清激情视频 | 精品久久久久久久久久久下田 | 欧美麻豆| 久久噜| 在线国产一区 | 中文字幕在线观看视频地址二 | 日本午夜视频 | 在线观看日韩av | 久久99这里只有精品 | 亚洲电影一区二区三区 | 综合久久精品 | 日本中文字幕一区 | 欧美精品一二区 | 欧美日韩欧美日韩 | 亚洲成人xxx | 精品一区二区免费视频 | 亚洲国产精品久久久 | 中文字幕亚洲一区二区三区 | 欧美日韩国产在线观看 | 精品国产91 | 日韩精品99久久久久中文字幕 | 高清av电影| 中文字幕亚洲一区二区va在线 | 久草电影在线 |