Environment Setup:

Local Development (Windows Server)

Configure a local Windows Server development environment.

Here's what you'll need:


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.

Installing Docker

As per the Docker EE Windows Server installation instructions, run the following commands from an elevated PowerShell prompt:

# Add the Docker provider to the PowerShell package manager
Install-Module DockerMsftProvider -Force

# Install Docker EE
Install-Package Docker -ProviderName DockerMsftProvider -Force

# Restart the computer to enable the containers feature

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.