gpt4 book ai didi

angular - 可以在 dockerfile 中获取 git 分支名称吗?

转载 作者:太空狗 更新时间:2023-10-29 17:51:23 32 4
gpt4 key购买 nike

不确定这是否可能。但是我想要的是改变dockerfile里面的这行代码

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

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

或者更好的是我如何在 gitbal-ci.yml 文件中做这样的事情:

# Production build
build:
stage: build
script:
- docker build --pull -t $CONTAINER_ENV_IMAGE .
- docker push $CONTAINER_ENV_IMAGE
args:
- env=prod
only:
- master

# Test build
build:
stage: build
script:
- docker build --pull -t $CONTAINER_ENV_IMAGE .
- docker push $CONTAINER_ENV_IMAGE
args:
- env=test
except:
- master

但前提是 git 分支名称是 test。我正在使用 gitlab 构建图像。

我需要这个来改变 angular 中的 api url 环境变量。这是可能的还是有更好的方法?

最佳答案

Dockerfile支持build argumentsenvironment variables .因此可以指定使用哪个分支,然后根据分支决定命令。例如,要传递构建参数,请使用 docker build--build-arg =。然后,您可以根据决定要使用的环境的 git_branch 变量设置一个变量。

FROM busybox
ARG git_branch
RUN echo “Building $git_branch”

关于angular - 可以在 dockerfile 中获取 git 分支名称吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49134348/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com