【发布时间】:2019-05-17 02:21:22
【问题描述】:
如何控制 Windows 上docker build 命令使用多少逻辑处理器?
我有这个 dockerfile:
FROM mcr.microsoft.com/windows/servercore:1803
SHELL ["powershell", "-NoLogo"]
RUN Get-ComputerInfo -Property *proc*
CMD Get-ComputerInfo -Property *proc*
当我构建图像时,我会看到以下输出:
CsNumberOfLogicalProcessors : 2
CsNumberOfProcessors : 1
请注意,我的计算机有 4 个逻辑处理器,当我使用 --cpus 4 选项运行容器时,我会得到预期的结果:
CsNumberOfLogicalProcessors : 4
CsNumberOfProcessors : 1
让我困惑的是为什么docker build 不支持--cpus 选项,因为它在创建图像层时运行容器。
码头工人信息:
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 41
Server Version: 18.09.0
Storage Driver: windowsfilter
Windows:
Logging Driver: json-file
Plugins:
Volume: local
Network: ics l2bridge l2tunnel nat null overlay transparent
Log: awslogs etwlogs fluentd gelf json-file local logentries splunk syslog
Swarm: inactive
Default Isolation: hyperv
Kernel Version: 10.0 17763 (17763.1.amd64fre.rs5_release.180914-1434)
Operating System: Windows 10 Pro Version 1809 (OS Build 17763.194)
OSType: windows
Architecture: x86_64
CPUs: 4
Total Memory: 7.891GiB
Name: Robo
ID: K3BP:UY7Z:JEXA:EJZ6:IYK6:WMW4:L4P4:5GTY:VR7K:SQKR:5QMO:AIEA
Docker Root Dir: C:\ProgramData\Docker
Debug Mode (client): false
Debug Mode (server): true
File Descriptors: -1
Goroutines: 28
System Time: 2018-12-16T16:48:59.7060639Z
EventsListeners: 1
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine
【问题讨论】:
-
从构建系统发布 docker 信息
-
@GregorySuvalian 我已将
docker info命令的输出添加到问题中。 -
是的,似乎无法在构建过程中控制 CPU,只能在运行时控制。我在下面创建了票。可以订阅关注github.com/MicrosoftDocs/Virtualization-Documentation/issues/…
标签: docker docker-for-windows docker-build