繁体   English   中英

在 Docker(适用于 Windows)中 如何在构建映像时批量添加注册表项?

[英]In Docker (for Windows) How can I add registry entries in bulk while building my image?

我将 Docker 用于 Windows 并使用 Dockerfile 构建 docker 图像,如下所示:

FROM mydockerhublogin/win2k16-ruby:1.0

# Set the working directory to /app
WORKDIR /app

# Copy the current directory contents into the container at /app
ADD . /app


# Make port 80 available to the world outside this container
EXPOSE 80

# Define environment variable
ENV NAME World

RUN powershell -Command \
    $ErrorActionPreference = 'Stop'; \
  New-Item "HKLM:\Software\WOW6432Node\ExampleCom" -Force ; \
  New-ItemProperty "HKLM:\Software\WOW6432Node\ExampleCom" -Name MenuLastUpdate -Value "test" -Force

RUN powershell -Command \
    $ErrorActionPreference = 'Stop'; \
  New-Item "HKLM:\Software\ExampleCom" -Force ; \
  New-ItemProperty "HKLM:\Software\ExampleCom" -Name MenuLastUpdate -Value "test" -Force
# Run ruby script when the container launches
CMD ["C:/Ruby23-x64/bin/ruby.exe", "docker_ruby_test.rb"]

请注意,我正在向 Windows 注册表添加一些注册表项,容器内的代码将访问这些注册表项。 虽然这种添加注册表项的方法对一些条目没问题,但我的要求是添加我的 windows 应用程序所需的数十个条目。 有没有办法以更简洁的方式做到这一点?

尝试为您的注册表项创建文件,然后将其复制到容器中。

然后尝试运行Invoke-Command -ScriptBlock {regedit /i /s C:\\shared\\settings.reg}

以下是我使用4.8-windowsservercore-ltsc2019开始工作的唯一方法

COPY Registry/ChromeConfiguration.reg .

RUN reg import ChromeConfiguration.reg

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM