0

我有一个 docker swarm,我从这个 compose 文件开始:

version: "3.1"

services:
  my_service:
    image: my_image
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /run/secrets:/run/secrets
    secrets:
      - my-secret
secrets:
  my-secret:
    file: my_secret.txt

现在,在运行的容器中my_service,我启动了一个新的同级容器(注意我已经安装了 docker 套接字),我希望可以访问my-secret它,尽管它不是 swarm 的一部分。最好的方法是什么?

简单地将秘密挂载为卷 ( docker run -v /run/secrets:/run/secrets sibling_image) 是行不通的,兄弟容器可以看到my-secret,但它是空的。

传递环境变量是可行的,但如果我有很多秘密,那就有点太麻烦了:docker run -it --env MY_SECRET=$(cat /run/secrets/my-secret) sibling_image

4

0 回答 0