如何将本地文件中的值读入 Docker-compose 环境变量?

Saq*_*Ali 5 environment-variables amazon-web-services docker-compose

我正在尝试~/.aws/credentials通过在我的docker-compose.yml文件中设置环境变量将我的 AWS 凭证从我的本地文件注入到 Docker 容器中。

但我不知道如何将本地文件中的凭据读取到 docker-compose 文件中。我该怎么做??

这是我的 AWS 凭证文件的样子:

$ cat ~/.aws/credentials
[default]
aws_access_key_id = AK_FAKE_KEY_88RD3PNY
aws_secret_access_key = BividQsWW_FAKE_KEY_MuB5VAAsQNJtSxQQyDY2C
Run Code Online (Sandbox Code Playgroud)

这是我的 Docker 撰写文件的相关部分的样子:

  my_service:
    build: .
    image: my_image
    environment:
         - AWS_ACCESS_KEY_ID=<What should I put here?>
         - AWS_SECRET_ACCESS_KEY=<What should I put here?>
Run Code Online (Sandbox Code Playgroud)

lec*_*tor 3

它需要来自您的凭据文件吗?

您可以创建~/aws_env_creds包含

AWS_ACCESS_KEY_ID=AK_FAKE_KEY_88RD3PNY
AWS_SECRET_ACCESS_KEY=BividQsWW_FAKE_KEY_MuB5VAAsQNJtSxQQyDY2C
Run Code Online (Sandbox Code Playgroud)

进而

my_service:
  build: .
  image: my_image
  env_file:
    - ~/aws_env_creds
Run Code Online (Sandbox Code Playgroud)