我在Windows server 2016上使用docker,我使用“microsoft/windowsservercore:最新”映像创建了一个容器。在这个映像上,我已经安装了新的“Printer”角色,但是当我试图调用“Get”cmdlet时,我会获得一个与假脱机程序服务有关的错误。以下是用于重新创建问题的命令:
docker run -d --name testspoolererror1 microsoft/windowsservercore:latest ping -t localhost
docker exec -it testspoolererror1 powershell
Install-WindowsFeature Print-Server
Set-Service spooler -StartupType Automatic
Start-Service spooler
Get-Service spooler
Get-Printer这是当我收到错误时:
获取-打印机:无法访问假脱机程序服务.确保假脱机程序服务正在运行。一行:1字符:1+Get-打印机+~+ CategoryInfo : NotSpecified: NotSpecified Get-打印机,CimException + FullyQualifiedErrorId : HRESULT 0x800706ba,Get-打印机在事件查看器中发现错误:打印假脱机服务意外终止。它已经做了两次了。
有人能帮我解决这个问题吗?
发布于 2017-01-17 01:15:47
我很遗憾听到你有这个问题,我很高兴能帮你解决这个问题:)
为了彻底起见,我亲自运行了以下命令:
docker run -it microsoft/windowsservercore:latest powershell(现在从容器中运行powershell )
Install-WindowsFeature Print-Server
Set-Service spooler -StartupType Automatic
Start-Service spooler
Get-Service spooler
Get-Printer我能够在我的系统上运行这些,没有错误。所以这是个开始。
现在,从您的错误来看,假脱机服务似乎还没有启动。当您运行Get-Service spooler**?时,您看到了什么?您会尝试像我上面列出的那样在您的系统上运行这些命令,然后报告结果吗?**
另外,要澄清的是,当您从容器中单击localhost时,您想做什么?你想要打开你的容器主机吗?
另外,如果您正在寻找容器网络如何在Windows上工作的背景信息,下面是一个很好的起点:https://learn.microsoft.com/en-us/virtualization/windowscontainers/manage-containers/container-networking
-Kallie B. (微软网络小组项目经理)
发布于 2018-01-26 22:45:18
Kallie之所以能够让上述步骤正常工作,可能是因为它的宿主方式不同。我在Server 2016框上通过Docker尝试了上述步骤,并命中了相同的错误。当我在Windows 10上通过Docker尝试它时,我成功地启动了假脱机程序并运行了上面的命令,但是我无法成功地安装任何驱动程序,这将使它实际上很有用。当尝试安装任何..inf时,Pnputil只会抛出奇怪的“无数据”错误。
我的猜测是,它在Windows 10上工作,因为它使用的是超级v仿真,而不是在服务器2016上托管Server 2016 Core时使用的本机容器。我注意到的另一件事是,在Server 2016上创建容器时,驱动程序是从基本计算机继承的,而不是在Windows 10上。我认为这是Docker专家非常理解的行为,但似乎是继承的驱动程序导致了崩溃。不过,我也不是Windows专家。
不管是哪种方式,这似乎都是微软必须研究和解决的问题。
发布于 2017-01-10 15:57:41
https://stackoverflow.com/questions/41565459
复制相似问题