如何将 Windows 应用程序 Docker 化

3
我有一个Windows应用程序需要容器化。这是一个桌面应用程序,不是Web应用程序。我进行了一些搜索,但几乎没有关于容器化桌面应用程序的资料。我想要容器化的应用程序在WindowsServerCore上可以正常运行,而且我已经在我的计算机上安装了Windowsservercore镜像。
我想知道如何进行容器化。是否有任何文档或有用的视频可供参考?当我完成Dockerfile后,我能够与我的应用程序GUI进行交互吗?如何实现?

{btsdaf} - Dr Sima
1个回答

4

您可以在StefanScherer/dockerfiles-windows中找到大量基于WindowsServiceCore的应用程序示例。

您需要编写一个Dockerfile,例如diskspd/Dockerfile,其中包含您需要复制/解压缩/安装的应用程序。

FROM microsoft/windowsservercore:10.0.14393.1770

SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]

ENV DISKSPD_VERSION 2.0.17

RUN Invoke-WebRequest $('https://gallery.technet.microsoft.com/DiskSpd-a-robust-storage-6cd2f223/file/152702/1/Diskspd-v{0}.zip' -f $env:DISKSPD_VERSION) -OutFile 'diskspd.zip' -UseBasicParsing ; \
    Expand-Archive diskspd.zip -DestinationPath C:\ ; \
    Remove-Item -Path diskspd.zip ; \
    Remove-Item -Recurse armfre ; \
    Remove-Item -Recurse x86fre ; \
    Remove-Item *.docx ; \
    Remove-Item *.pdf

ENTRYPOINT [ "C:\\amd64fre\\diskspd.exe" ]

话虽如此,仍然需要对Windows Core Server提供完整的GUI支持:
"创建具有完整GUI支持的基础容器


我想知道当我完成 Dockerfile 后,我是否可以在 VMware 中运行它?我能否与我的应用程序 GUI 进行交互? - Dr Sima
@DrSima 没有图形界面,是的,我相信:请查看我的编辑答案。您的VMWare的主机是什么? - VonC
2
备忘录:这是我在Stack Overflow上的第18,000个答案(用时109个月),距离第170,000个答案不到7个月。在这之前,还有第160,000个答案、第150,000个答案、第140,000个答案、第13000个答案、第12000个答案和第11000个答案... - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接