可以将来自docker-compose.yml的env变量传递给dockerfile吗?

问题描述 投票:0回答:1

是否可以将来自docker-compose.yml文件的env传递给dockerfile。

我在dockerfile里面有这样的:

RUN $(npm bin)/ng build --prod --env=prod

但我想要的是当docker-compose.yml有一个build_env时:

environment:
            BUILD_ENV: 'test'

然后我想要码头工人

RUN $(npm bin)/ng build --prod --env=test

我如何实现这样的目标?或者还有其他更好的解决方案吗?

angular docker environment-variables docker-compose
1个回答
1
投票

您可以查看此文档:

https://docs.docker.com/compose/compose-file/#args

build:
  context: .
  args:
    - buildno=1
    - password=secret
    - buildenv=prod

-

ARG buildno
ARG password
ARG buildenv

RUN echo "Build number: $buildno"
RUN script-requiring-password.sh "$password"
RUN $(npm bin)/ng build --prod --env="$buildenv"
© www.soinside.com 2019 - 2024. All rights reserved.