You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

提交后的UBI容器无法渲染GUI桌面问题求助

容器中XRDP/GNOME提交镜像后无法连接的问题

背景

为了运行一款已停止支持的老旧Windows GUI应用,我通过Red Hat开发者订阅安装了带容器工具的RHEL 8.6,使用UBI-INIT基础镜像创建容器,在容器内安装了带XRDP的GNOME桌面,初始容器能正常渲染GUI桌面。但将该容器提交为镜像后,运行新镜像时XRDP会话超时,GUI无法渲染,仿佛服务未运行或端口无法访问。

已排查内容

  • 确认从提交镜像启动的容器中,所有支持XRDP和GNOME的必要服务均正常运行
  • journalctl未显示明显错误,仅存在rtkit告警(初始容器中也有此告警,不属于新问题)
  • XRDP及xrdp-sesman日志中无任何连接尝试记录,但可正常SSH连接容器,端口配置无问题

操作命令

初始容器启动命令

podman run -d -v /mnt/share:/share -p 53389:3389 -p 50022:22 --rm --privileged --name ubi-ini registry.access.redhat.com/ubi8/ubi-init;
podman exec -it ubi-ini bash

容器内配置命令

timedatectl set-timezone America/New_York
# GNOME desktop GUI
dnf install -y selinux-policy-targeted
dnf groupinstall -y --skip-broken "Server with GUI"
# xrdp
dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf install -y xrdp
echo 'if [ "$DISPLAY" !=' "'\"\"'" ]; then xhost +; fi;' >> /etc/profile
sed -i '/^port=3389.*/a port=tcp://:3389' /etc/xrdp/xrdp.ini
useradd -g root -p $(echo "jde" | openssl passwd -1 -stdin) jde
usermod -aG wheel jde
systemctl enable xrdp xrdp-sesman gdm
systemctl unmask systemd-logind.service
systemctl restart sshd xrdp xrdp-sesman dbus gdm systemd-logind.service

镜像提交与启动命令

提交镜像:

podman commit ubi-ini ubi-gui

运行新镜像:

podman run -d -v /mnt/share:/share -p 63389:3389 -p 60022:22 --rm --privileged --name ubi-gui ubi-gui

求助需求

XRDP通过systemd与桌面管理器通信,UBI-INIT是唯一支持systemd的Linux基础容器。我怀疑衍生容器的进程存在问题,但通过ps aux对比初始容器和衍生容器的进程,未发现明显异常。恳请提供解决思路。

内容的提问来源于stack exchange,提问作者Blaarfengard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 03:25:49