第 2 章 已知问题
nodejs 不再包含在 .NET 8.0 SDK 镜像中。
有关如何将依赖于 Node.NET 版本的应用程序从以前的 .NET 版本移植到 .NET 8.0 镜像的详情,请参考使用 .NET 8.0 UBI 镜像构建带有 NodeJS 前端的 web 应用程序。
-
OpenShift Container Platform 使用的随机用户不再添加到 OpenShift Container Platform 3.11 上的
/etc/passwd
文件中。因此,.NETEnvironment.UserName
属性返回一个空字符串。 -
DOTNET_CORE_VERSION
和DOTNET_FRAMEWORK
环境变量已从镜像中删除。相反,镜像现在包含准确版本的 .NET 框架、ASP.NET Core 框架和DOTNET_VERSION
中的 SDK 版本、ASPNET_VERSION
和DOTNET_SDK_VERSION
环境变量。 -
用于从额外目录加载证书的
DOTNET_SSL_DIRS
环境变量不再由镜像入口点处理。默认 s2i (source-to-image)assemble
和run
脚本仍然处理环境变量。要信任所有情况下的证书,请使用SSL_CERT_DIR
。 在 .NET 8.0 中,您无法将命令及其参数指定为在单个字符串在容器中运行。您需要将参数作为单独的字符串传递。新的语法也适用于以前的 .NET 版本。
例如,使用
podman run registry.access.redhat.com/ubi8/dotnet-70 "echo hello"
,使用podman run registry.access.redhat.com/ubi8/dotnet-80 echo hello
。dnf
命令不可用。为减小镜像大小,.NET 8.0 容器镜像使用
ubi-minimal
基础镜像,而不是 ubi 基础镜像。ubi-minimal
镜像使用microdnf
命令作为其软件包管理器,而不是dnf
命令。如果您的 Dockerfiles/Containerfiles 使用
dnf
命令,则必须将它们更改为使用microdnf
命令。有关
microdnf
命令的详情请参考microdnf
man page。
如需已知问题 列表,请参阅 .NET 8.0 RPM 软件包的 .NET 8.0 发行注记中的已知问题。