我需要将Windows容器作为可执行文件运行,运行一个相当复杂的PowerShell脚本(调用.NET和Java应用程序)并退出。码头文件建议为此目的使用ENTRYPOINT。因此,我继续创建了一个Dockerfile,其内容如下:
FROM microsoft/dotnet-framework
COPY run.ps1 /
ENTRYPOINT [ "powershell.exe", "C:\\run.ps1" ]run.ps1的内容(简化了这个问题):
gci
write-host "looks like everything is good!"然后,我运行以下命令:
# Build the Docker image
docker build --rm -t testdockerps .
# Create/run container using above image
docker run -it testdockerps容器成功运行,显示C:\的内容和消息- looks like everything is good!。
根据我的观察,我有几个问题:
ENTRYPOINT JSON数组的第一个元素?我应该在Dockerfile中使用SHELL命令吗?发布于 2018-04-16 11:52:32
是的,您可以将powershell指定为默认shell,如下面的DOCKERFILE顶部所示
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'Continue'; $verbosePreference='Continue';"]我不确定你能做些什么来减少你的虚拟机
https://stackoverflow.com/questions/49851347
复制相似问题