从docker-compose.yml文件将变量传递给Dockerfile

我有几个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

我有一个要在其中使用SOMETHING的dockerfile。

# 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给我看光。

以上是 从docker-compose.yml文件将变量传递给Dockerfile 的全部内容, 来源链接: utcz.com/qa/433491.html

回到顶部