Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Windows容器中的应用程序访问Docker secret_Windows_Docker_Docker Secrets - Fatal编程技术网

从Windows容器中的应用程序访问Docker secret

从Windows容器中的应用程序访问Docker secret,windows,docker,docker-secrets,Windows,Docker,Docker Secrets,我们正在Windows Server 2019上运行Docker Enterprise 18.09.8。我们的应用程序是使用Express构建的,并在swarm中的Docker容器中作为服务运行。我们的图像需要很小,所以它们是在Windows nano上构建的,这意味着没有Powershell。我们使用的服务有一个API密钥,它应该是私有的,因此我们计划使用Docker secrets使该API密钥可供应用程序使用 不幸的是,应用程序无法读取Docker机密。如果我使用: docker exec

我们正在Windows Server 2019上运行Docker Enterprise 18.09.8。我们的应用程序是使用Express构建的,并在swarm中的Docker容器中作为服务运行。我们的图像需要很小,所以它们是在Windows nano上构建的,这意味着没有Powershell。我们使用的服务有一个API密钥,它应该是私有的,因此我们计划使用Docker secrets使该API密钥可供应用程序使用

不幸的是,应用程序无法读取Docker机密。如果我使用:

docker exec -it 8528f64a022e cmd.exe
我可以看到有东西出现在:

C:\ProgramData\Docker\secrets\search_credentials
但我看不懂。如果我改用:

docker exec -it --user ContainerAdministrator 8528f64a022e cmd.exe
我可以键入文件的内容

问题的核心似乎来自:

创建使用Windows容器的服务时,机密不支持指定UID、GID和模式的选项。目前,只有在容器中具有系统访问权限的管理员和用户才能访问机密


我的应用程序在没有提升权限的情况下无法访问机密的内容,这是真的吗?

你发现了吗?@Konstantin-唉,没有,现在我正在进行其他项目。