新 Docker 构建用于 aws cli 的机密信息

New Docker Build secret information for use with aws cli

我想使用新的 --secret flag 以便在构建过程中通过其 cli 从 aws 中检索某些内容。

# syntax = docker/dockerfile:1.0-experimental
FROM alpine
RUN --mount=type=secret,id=mysecret,dst=/root/.aws cat /root/.aws

我可以在 运行 执行以下命令时看到凭据:

docker build --no-cache --progress=plain --secret id=mysecret,src=%USERPROFILE%/.aws/credentials .

但是,如果我将命令调整为 运行,aws cli 找不到凭证文件并要求我执行 aws configure:

RUN --mount=type=secret,id=mysecret,dst=/root/.aws aws ssm get-parameter

有什么想法吗?

以下作品:

# syntax = docker/dockerfile:1.0-experimental
FROM alpine
RUN --mount=type=secret,id=aws,dst=/aws export AWS_SHARED_CREDENTIALS_FILE=/aws aws ssm get-parameter ...