代码之家  ›  专栏  ›  技术社区  ›  João Matos

文档文件中的AWS凭据

  •  4
  • João Matos  · 技术社区  · 6 年前

    docker致命错误:找不到凭据

    尽管之前执行过:

    此外,我无法使用——为此目的构建arg。

    我的问题是:有没有这些证件 不在文件中硬编码,如果是怎么做的?

    1 回复  |  直到 6 年前
        1
  •  4
  •   Jack Gore    6 年前

    使用 --build-arg 标记是正确的方法,但是您必须使用 ARG ENV 在Dockerfile中指定它们的指令。

    下面是一个例子 Dockerfile 我用过的AWS证书。它接受aws凭据作为构建参数,包括 AWS_REGION 建立论点。然后它执行一个基本的aws操作,在本例中是登录到ecr。

    FROM <base-image>:latest # an image I have that has `aws` installed
    
    ARG AWS_ACCESS_KEY_ID
    ARG AWS_SECRET_ACCESS_KEY
    ARG AWS_REGION=us-west-2
    
    RUN aws ecr get-login --no-include-email | bash
    
    CMD ["npm", "start"]
    

    然后使用以下命令生成图像:

    docker build -t testing --build-arg AWS_ACCESS_KEY_ID=<Your ID Here> \
        --build-arg AWS_SECRET_ACCESS_KEY=<Your Key Here> .
    

    希望这有帮助。