powershell - 如何使用Powershell在Windows容器中使用环境变量

标签 powershell docker dockerfile

在Windows Docker容器中,我试图根据构建参数设置环境变量。

我已经试过了:

docker build --build-arg MYVAR="test" .

在Dockerfile中,我有:
#escape=`

ARG MYVAR
ENV MYENVVAR {`"endpointCredentials`": [{`"password`": `"$Env:MYVAR`"}]}

但是当我运行Get-Item $Env:MYVAR时,我得到:
{"endpointCredentials": [{"password":":MYVAR"}]}

我想要的是
{"endpointCredentials": [{"password":"test"}]}

最佳答案

--build-arg会将参数传递给Dockerfile,因此您需要将MYVAR配置为Dockerfile中的参数:

ARG MYVAR
ENV MYENVAR {`"endpointCredntials`": [{`"password`": "$MYVAR"}]}

关于powershell - 如何使用Powershell在Windows容器中使用环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57094454/

相关文章:

powershell - 如何在不使用 Get-Content 的情况下从文件中读取 X 字节

Powershell - 从管道中提取变量

docker - 关于Docker文件系统的奥秘

jenkins - Jenkinsfile自定义Docker容器 “could not find FROM instruction”

excel - 获取 Excel 元数据

powershell - 如何显示使用扩展参数调用的命令行

docker - 如何使用 Docker 的 COPY/ADD 指令将单个文件复制到镜像

java - 将unix中测试的dockerfile转换为windows,由于权限被拒绝,RUN命令失败

linux - Docker 镜像/容器里面有什么?

amazon-web-services - 如何使用 AWS Beanstalk 和 Spring Cloud Netflix 在 Docker 容器之间建立连接