Here's what you'll need:
- 64-bit Windows 10 Pro, Enterprise, or Education (Version 1607 or newer)
- Hardware-accelerated virtualisation enabled in the system BIOS/EFI
- Docker Desktop for Windows
- Blacklisted versions of Windows 10
- Optimal performance warning for Windows containers
- Installing Docker
- Configuring Docker for building and running Windows containers
- Configuring Docker for building and running Linux containers
Blacklisted versions of Windows 10
Do not use Windows 10 version 1903 or Windows 10 version 1909 to build Windows container images with Docker version 19.03.5 or older. There is a known bug in Windows Server versions 1903 and 1909 and Windows 10 versions 1903 and 1909 that prevents Docker from building images larger than the default limit of 20GB. A workaround for this bug was introduced in Docker version 19.03.6.
Optimal performance warning for Windows containers
Do not use Windows 10 version 1803 or older, or Windows 10 version 21H1, to build Windows container images.
If you are using Windows 10 to build and run Windows containers then Docker Desktop for Windows will use Hyper-V isolation mode by default, which suffers from a number of performance and stability issues that make it poorly suited for use with Unreal Engine containers. If you are running Windows 10 version 1809 or newer then it is strongly recommended that you instruct Docker to use process isolation mode instead, but process isolation mode is not supported by Windows 10 version 21H1 due to a lack of corresponding base images. If you are running an older version of Windows 10 that does not support this feature then it is recommended that you update to Windows 10 version 1809, 2004 or 20H2, or alternatively use Windows Server to build and run Windows containers in process isolation mode.
Download the Docker Desktop for Windows installer and follow the installation instructions. Once the application is installed and running it will automatically create Hyper-V virtual machines suitable for running both Windows containers and Linux containers. Unless you have enabled support for the experimental Linux containers on Windows (LCOW) feature, the two container platforms are treated as separate “modes” that Docker Desktop for Windows can switch between. The default mode after installation is Linux container mode.
Configuring Docker for building and running Windows containers
Remember to switch to Windows containers mode before following these instructions.
By default, Docker Desktop for Windows imposes a 20GB size limit on container images, which is too low for building and running Unreal Engine containers. You will need to increase the maximum container disk size to the recommended limit of 300GB by following the instructions below.
Step 1: Right-click on the Docker Desktop system tray icon and choose “Settings” from the context menu to open the Docker Desktop settings dialog.
Step 2: Click on the “Docker Engine” tab of the settings dialog to view the Docker daemon’s current JSON configuration data.
Step 3: Add the top-level
storage-opts entry to any existing JSON configuration data:
Step 4: Click the “Apply & Restart” button to apply the changes and restart the Docker daemon.
Configuring Docker for building and running Linux containers
By default, Docker Desktop for Windows will use a Linux virtual machine running the Moby VM image to run the Docker daemon. This is the configuration that Microsoft currently recommends due to the experimental nature of LCOW. The default configured resource limits for the Moby VM are too low for building and running Unreal Engine containers. You will need to use the Advanced tab of the Docker settings pane to increase the resource allocations:
- Set the CPU count and memory allocation to appropriate levels. A minimum of 8GB of memory is recommended, but more is better.
- Increase the maximum VM disk image size in order to accommodate large container images. If you are building Unreal Engine container images that include the Engine Tools then a minimum disk size of 200GB is recommended.