簡體   English   中英

將變量從docker-compose.yml文件傳遞給Dockerfile

[英]Pass a variable to a Dockerfile from a docker-compose.yml file

我有幾個docker-compose.yml文件,我想使用相同的Dockerfile,稍有變化。 所以我想將一個參數傳遞給該Dockerfile,以便我可以根據變量設置的值做一些略微不同的事情。

到目前為止我嘗試過的

docker-compose-A.yml文件

version: '2'

services:
  django:
    build:
      context: .
      dockerfile: ./docker/Dockerfile
      args:
        - SOMETHING=foo

docker-compose-B.yml文件

version: '2'

services:
  django:
    build:
      context: .
      dockerfile: ./docker/Dockerfile
      args:
        - SOMETHING=bar

我有一個dockerfile我想使用SOMETHING。例如

# Dockerfile
RUN echo $SOMETHING

這不起作用。 SOMETHING未傳遞給dockerfile。

我這樣做不正確還是這不是預期用途?

有沒有其他方法可以從docker-compose.yml文件將變量傳遞給Dockerfile?

基本上我錯過了在Dockerfile中聲明arg。

# docker-compose.yml file

version: '2'

services:
  django:
    build:
      context: .
      dockerfile: ./docker/Dockerfile
      args:
        - SOMETHING=foo

# Dockerfile
ARG SOMETHING
RUN echo $SOMETHING


向@Lauri致敬,向我展示了光明。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM