- Sources of Unreal Engine runtime images
- Sources of Unreal Engine development images
- Feature support matrix
Sources of Unreal Engine runtime images
Runtime images are container base images for running packaged Unreal projects. Packaged Unreal projects can run in any container image that includes the required runtime libraries. These requirements vary based on platform:
Windows containers: the mcr.microsoft.com/windows image will work out of the box, but is prohibitively large in size and impractical to deploy. The mcr.microsoft.com/windows/servercore image is smaller but will require a number of DLL files copied from either the full base image or the host system. Don’t even bother trying to use the mcr.microsoft.com/windows/nanoserver image.
Linux containers with the NVIDIA Container Toolkit: performing offscreen rendering inside a container requires an image derived from the nvidia/opengl, nvidia/vulkan or nvidia/cudagl base images. Creating X11 windows also requires the X11 runtime libraries.
Since runtime base images do not contain any Unreal Engine components, they can be distributed without any restrictions and shared publicly on container registries such as Docker Hub. A number of pre-configured base images are maintained by the community and are readily available for download:
- adamrehn/ue4-runtime: provides a variety of tags representing minimal, pre-configured environments for running packaged Unreal Engine projects with GPU acceleration via the NVIDIA Container Toolkit. Support for both OpenGL and Vulkan is provided by all image variants. Includes variants with CUDA support for use with machine learning workloads.
Sources of Unreal Engine development images
Development images are images which contain the “Engine Tools” (Editor and build tools.) As discussed in the Unreal Engine EULA Restrictions page, container images that include the Engine Tools for building and packaging Unreal projects or plugins cannot be distributed publicly. These container images must only be distributed privately to ensure compliance with the terms of the EULA. If your organisation already has prebuilt container images then you can access them via whichever private sharing mechanism is most appropriate. If you do not have access to existing container images within your organisation then you will need to build container images yourself.
The following sources are available for building Unreal Engine container images that include the Engine Tools:
ue4-docker: Build Unreal Engine container images using the ue4-docker project.
Custom Dockerfiles: Write your own Dockerfiles to build Unreal Engine development container images.
For details of the features supported by these sources, see the section below.
Feature support matrix
The table below lists the features that are supported by each source of container images that include the Engine Tools:
|NVIDIA GPU support||Yes||Varies|
|Unreal Engine build tools|
|Unreal Engine target platforms|
For an explanation of what each feature listed in the table denotes, see below.
Linux: Supports building containers using Docker CE and Docker EE under Linux.
Windows: Supports building containers using Docker EE under Windows Server and Docker Desktop for Windows under Windows 10.
macOS: Supports building containers using Docker Desktop for Mac under macOS.
Linux containers: Supports building Linux containers.
Windows containers: Supports building Windows containers.
NVIDIA GPU support: Supports building Linux containers that are compatible with the NVIDIA Container Toolkit.
Unreal Engine build tools
Source build: Supports building a source build of the Engine.
Installed Build: Supports building an Installed Build of the Engine.
Unreal Engine target platforms
Windows native: Supports building Unreal Engine projects and plugins for Windows targets from Windows containers.
Linux native: Supports building Unreal Engine projects and plugins for Linux targets from Linux containers.
Linux cross-compilation: Supports cross-compiling Unreal Engine projects and plugins for Linux targets from Windows containers.
Android cross-compilation: Supports cross-compiling Unreal Engine projects and plugins for Android targets from Windows containers.
HTML5 cross-compilation: Supports cross-compiling Unreal Engine projects and plugins for HTML5 targets from Windows containers.