Here's what you'll need:
- Windows Server 2016 or newer
- Docker Enterprise Edition (EE) for Windows Server
- Blacklisted versions of Windows Server
- Obtaining Windows Server
- Installing Docker
- Configuring Docker for building and running Windows containers
- Configuring Docker for building and running Linux containers
Blacklisted versions of Windows Server
Do not use Windows Server version 1903 to build Windows container images. There is a known bug in Windows Server version 1903 and Windows 10 version 1903 that prevents Docker from building images larger than the default limit of 20GB. This version of Windows should be avoided when building Unreal Engine container images.
Obtaining Windows Server
If you don’t already own a Windows Server license, you can download an evaluation copy of any version of Windows Server in the Long-Term Servicing Channel (LTSC) from the Microsoft Evaluation Center that will be valid for 180 days:
Note that evaluation copies are not available for versions of Windows Server in the Semi-Annual Channel (SAC). These versions of Windows Server can only be obtained by Visual Studio subscribers or Microsoft volume licensing customers with Software Assurance.
As per the Docker EE Windows Server installation instructions, run the following commands from an elevated PowerShell prompt:
Older versions of Windows Server may sometimes encounter a checksum verification error that prevents the installation process from completing successfully. See this GitHub issue discussing the error for a number of workarounds that may help to resolve the problem.
Configuring Docker for building and running Windows containers
By default, Docker EE under Windows Server imposes a 20GB size limit on container images, which is too low for building and running Unreal Engine containers. You will need to follow the instructions provided by Microsoft to increase the maximum container disk size. The 120GB limit specified in the instructions is sufficient for building and running Unreal Engine container images that do not include the Engine Tools, but a limit of 300GB is recommended for building container images that do include the Engine Tools.
Configuring Docker for building and running Linux containers
Docker EE under Windows Server only supports running Linux containers using the experimental Linux containers on Windows (LCOW) feature, which relies on Hyper-V isolation mode. Hyper-V isolation mode currently suffers from a number of performance and stability issues that make it poorly suited for use with Unreal Engine containers. It is strongly recommended that you use another platform for building and running Linux containers.
There are a number of guides available online that discuss enabling LCOW support under Windows server, but no instructions are provided by the official Microsoft documentation. This page will be updated when official documentation on this configuration scenario becomes available.