Docker容器能否访问Windows主机';环境变量

Docker容器能否访问Windows主机';环境变量,docker,dockerfile,Docker,Dockerfile,我已经执行了一些测试,看起来容器只能访问自己的Windows系统环境变量。容器是否有办法访问主机的系统环境变量?Docker容器与主机和彼此隔离。除非您显式地传入内容或手动授予访问权限,否则容器无法访问主机的环境变量、文件系统、初始化系统、全局配置、显示、物理设备等 传递主机环境变量的唯一方法是使用docker run-e选项或其他类似选项,如docker Composeenvironment:块。在和中,指定不带值的变量名将从主机传递,但必须显式命名。您不能在Docker文件或图像的任何其他属

我已经执行了一些测试,看起来容器只能访问自己的Windows系统环境变量。容器是否有办法访问主机的系统环境变量?

Docker容器与主机和彼此隔离。除非您显式地传入内容或手动授予访问权限,否则容器无法访问主机的环境变量、文件系统、初始化系统、全局配置、显示、物理设备等


传递主机环境变量的唯一方法是使用
docker run-e
选项或其他类似选项,如docker Compose
environment:
块。在和中,指定不带值的变量名将从主机传递,但必须显式命名。您不能在Docker文件或图像的任何其他属性中指定此属性。

如果您使用run命令yes添加它们,如果nohing else有帮助,您还可以在容器外部运行脚本,将它们写入文件,并将其映射到卷,然后读取容器中的文件。我了解Docker环境变量,如何在Dockerfile中定义它们,以及如何将它们传递给docker run命令的-e标志。但是,我需要定义一个Windows系统环境变量,它们不是同一个环境变量。我尝试在Dockerfile中使用setx.exe命令来设置容器本身中的Windows环境变量,但Dockerfile环境变量的作用域未限定为RUN命令,因此这也不起作用。是的,这不起作用,我怀疑docker不能像您唯一能做的那样修改主机系统在映射文件上运行循环脚本,并在主机系统上设置environment,ent accordinglky它针对容器执行并创建Windows环境变量。但是,Dockerfile运行可以访问Docker环境变量。因此,我无法通过-e标志动态设置它。