Chapter 2. Known issues

  1. ReadyToRun, which is enabled on a source-to-image build via the DOTNET_PUBLISH_READYTORUN environment variable, is not supported on s390x. The build will print a warning and ignore this variable.
  2. The SDK image contains nodeJS to support building JavaScript front-ends in tandem with the .NET backend. Some JavaScript web front-ends cannot be built on s390x and aarch64 due to missing nodeJS packages.
  3. .NET 6.0 on s390x does not understand memory and cpu limits in containers.

    In such environments, it is possible that .NET 6.0 will try to use more memory than allocated to the container, causing the container to get killed or restarted in OpenShift Container Platform. As a workaround you can manually specify a heap limit through an environment variable: MONO_GC_PARAMS=max-heap-size=<limit>. You should set the limit to 75% of the memory allocated to the container. For example, if the container memory limit is 300MB, set MONO_GC_PARAMS=max-heap-size=225M.

See Known Issues in the .NET 6.0 Release Notes for .NET 6.0 RPM packages for a list of known issues and workarounds for RPMs.