Build Containers take a long time to build with Windows Servercore

I’ve been having an issue with my build taking around ~2 hours to build. Basically, I’m installing a couple of build tools onto a Windows Servercore container and setting up a build environment for a project. One of the build tools is large (around 10GB), but that transfers to the daemon pretty quickly. I then launch a powershell process to install the system as shown below. This command works in a base Servercore container and in that container, the installation takes ~20min.

RUN powershell.exe -Command Start-Process C:\Install_Dir\setup.exe -ArgumentList ‘VALID ARGS’ -NoNewWindow -Wait

The confusing part is that it looks like the build container runs for about ~40 min, then stops. The build then hangs for about another 45 min to an hour, and then finishes. Why would the container stop like this? Any thoughts on why it’s so slow?

Note: I did try this installation with Linux and it went a ton faster, but alas, I’m locked into windows for a one of my tools.

Docker info:

 Debug Mode: false

 Containers: 1
  Running: 0
  Paused: 0
  Stopped: 1
 Images: 14
 Server Version: 19.03.5
 Storage Driver: windowsfilter
 Logging Driver: json-file
  Volume: local
  Network: ics internal l2bridge l2tunnel nat null overlay private transparent
  Log: awslogs etwlogs fluentd gcplogs 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.740)
 OSType: windows
 Architecture: x86_64
 CPUs: 8
 Total Memory: 31.88GiB
 Name: GCND82130DQE
 Docker Root Dir: C:\ProgramData\Docker
 Debug Mode: true
  File Descriptors: -1
  Goroutines: 27
  System Time: 2020-01-23T10:16:24.8561728-05:00
  EventsListeners: 1
 HTTP Proxy:
 HTTPS Proxy:
 Experimental: false
 Insecure Registries:
 Live Restore Enabled: false
 Product License: Community Engine