将一个variables从docker-compose.yml文件传递给Dockerfile

我有几个docker-compose.yml文件,我想使用相同的Dockerfile,稍作变动。 所以我想传递一个参数给Dockerfile,这样我可以根据variables设置的值来做一些稍微不同的事情。

我到目前为止所尝试过的

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 

我有一个docker文件,我想在使用SOMETHING

 # Dockerfile RUN echo $SOMETHING 

这是行不通的。 SOMETHING不会传递给dockerfile。

我这样做是不正确的,或者这不是预期的用法?

有没有其他的方式来从docker-compose.yml文件传递一个variables到一个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大声呼喊,向我展示光明。