【问题标题】:DOCKER How do I set an password and username on docker run with an windows image?DOCKER 如何使用 Windows 映像在 docker run 上设置密码和用户名?
【发布时间】:2020-03-24 10:27:08
【问题描述】:

我想要什么

我想在启动容器时设置用户名和密码例如:

docker run --password=mysupersafepw --user=myusername mcr.microsoft.com/windows/servercore

我有什么

目前用户和密码在我的 dockerfile 中被硬编码:

RUN net USER /ADD ssh Passw0rd  && net localgroup Administrators ssh /ADD

我的尝试

我已经听说过环境变量,但这(在 dockerfile 中)对我不起作用:

ENV user=ssh
ENV password=Passw0rd
[...]    
RUN net USER /ADD ${user} ${password}  && net localgroup Administrators ${user} /ADD

docker 构建结果:

Step 10/14 : RUN net USER /ADD ${user} ${password}  && net localgroup Administrators ${user} /ADD
 ---> Running in 2552caf74946
The password does not meet the password policy requirements. Check the minimum password length, password complexity and password history requirements.

More help is available by typing NET HELPMSG 2245.

【问题讨论】:

  • 嘿帕斯卡,你能实现这个流程吗???
  • @vishruti 不,我不是。我需要的项目被取消了。
  • 哦,好的,感谢您的快速响应。

标签: docker dockerfile docker-run


【解决方案1】:

您在正确的轨道上并且缺少一些参数。您在 docker 文件中定义 EVN user 是正确的。为了在运行时设置user 的值,您应该将其指定为docker run -e user=ssh,以便在您的情况下可以使用以下方法。

docker run -e password=mysupersafepw -e user=myusername mcr.microsoft.com/windows/servercore

假设您已在 dockerfile 中正确设置它们。

【讨论】:

  • 感谢您的快速答复。但我的问题是,dockerfile 的构建失败,而不是 docker run 命令:/
  • 你能用 dockerfile 编辑你的问题吗
  • 我编辑了描述。我仍然想知道如何使用“docker run”来做到这一点,但我需要 dockerfile 中的帮助才能使其成为可能
【解决方案2】:

您好,我遇到了同样的问题,通过运行为我完成的 powershell 脚本解决了它

docker run -e password=yourpassword 其余选项 然后让脚本更改您在命令行中提供的密码。

【讨论】:

    【解决方案3】:

    Windows 映像的默认 shell 是 cmd.exe。因此,ARGENV 应该像在任何 Windows cmd 中一样被取消引用:%myarg%

    所以在你的情况下,取消引用应该像这样: RUN net USER /ADD %user% %password% && RUN net localgroup Administrators %user% /ADD

    另外,ENV 语句应该放在FROM 语句之后,以使容器内的环境变量可用。

    也可以使用以下命令将 shell 更改为 powershell: SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue'; $verbosePreference='Continue';"]

    在这种情况下,取消引用的语法为:$env:myenv

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 2021-12-16
      • 2019-03-08
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2020-10-07
      相关资源
      最近更新 更多