运行 Windows 容器上的 PowerShell 启动并保持它 运行

Run PowerShell on Windows Container start and keep it running

我已经试验和搜索了很长时间,但没有找到有效的答案。 我有一个 Windows 容器,每次创建新容器时我都需要嵌入一个启动脚本。 我找到的所有答案都表明以下之一:

  1. 将命令添加到 docker 文件 - 这不好,因为它只会在构建映像时 运行。每次从图像创建新容器时,我都需要它运行,
  2. 在启动容器后使用 docker exec - 这也不是我需要的。这些图像旨在 "shippable"。除了创建新容器之外,我需要脚本 运行 无需任何特殊操作。
  3. 使用 ENTRYPOINT - 我这里有 2 个案例。它要么失败并立即退出。或者成功但容器停止。我需要它来保持 运行ning。

基本上,这样做的目的是在容器启动时对容器进行一些初始配置并保持 运行ning。 这些操作围绕着生成 GUID 和注册主机名。这些必须是唯一的,这就是为什么我需要在容器启动时立即 运行 它们。

看起来我只需要 dockerfile 中的 CMD。我用了: CMD powershell -文件 我只是检查了脚本是否是第一次 运行