docker容器中如何打开xclock等图形界面程序

环境

ubuntu1804.5桌面版

参考网址

https://blog.youkuaiyun.com/qq_41987977/article/details/105994564
https://www.cnblogs.com/ruiyang-/p/10185840.html

问题的发生

探索deepstream的时候,在最后执行程序时候应该有视频画面播放,结果却没有显示。

重要说明

后续的内容都是直接在ubuntu桌面上进行操作,
通过xshell等工作进行操作可能会失败.
(docker容器中的打开的界面无法直接通过xshell传到远程)

探索过程

首先在宿主机中执行:

sudo apt-get install x11-xserver-utils
xhost +

创建容器的使用,使用的命令为:

docker run --gpus all -it -v /tmp/.X11-unix:/tmp/.X11-unix -p 127.0.0.1:5000:22 -m 2g -e DISPLAY=unix$DISPLAY -e GDK_SCALE -e GDK_DPI_SCALE --name deep -w /opt/nvidia/deepstream/deepstream-5.0 nvcr.io/nvidia/deepstream:5.0-dp-20.04-triton

关键:注意上面的DISPLAY=unix$DISPLAY

在进入容器前,在宿主机执行:export | grep DIS
显示内容如下:declare -x DISPLAY=":0"
进入容器后,执行命令export | grep DIS
如果显示内容为:declare -x DISPLAY="unix:0"
那么则在宿主机以及容器中执行指令xclock都应该能够看到跳出来的小闹钟.

如果容器中执行的内容不相符,那么在容器中可以通过命令进行调整:

export DISPLAY="unix:0"

最后执行命令export | grep DIS看是否是想要的结果.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值