我有几个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给我看光。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句