可以把docker镜像看做一台没配显示器的电脑,程序可以运行,但是没地方显示。 linux目前的主流图像界面服务X11 支持 客户端/服务端(Client/Server)的工作模式,只要在容器启动的时候,将 『unix:端口』或『主机名:端口』共享给docker,docker 就可以通过端口找到显示输出的地方,和linux系统共用显示。
1)在主系统里运行
$ sudo apt-get install x11-xserver-utils $ xhost +
这两句的作用是开放权限,允许所有用户,当然包括docker,访问X11 的显示接口
2)在启动docker容器时,添加选项如下:
-v /tmp/.X11-unix:/tmp/.X11-unix #共享本地unix端口 -e DISPLAY=unix$DISPLAY #修改环境变量DISPLAY -e GDK_SCALE #这两个应该是与显示效果相关的环境变量 -e GDK_DPI_SCALE
最终的启动命令类似这样
$ docker run -d -v /etc/localtime:/etc/localtime:ro -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY -e GDK_SCALE -e GDK_DPI_SCALE --name libreoffice jess/libreoffice
这样启动后的容器,运行有图形界面的程序就可以**显示,和在本地显示一样了。
这样操作已经十分方便了。需要注意的是,每次重新开机,需要在本机操作一次
xhost +
打开权限。
的是通过docker技术,在集群主机上部署实现,安全可靠,拥有上万Linux镜像,功能强大、轻量灵活,可轻松作集群服务,**轻松搭建私有网络。
高性价比的容器云产品链接
提示:现在腾讯云新人点击注册然后实名认证后,可以点此一键领取2860元代金券,然后点此进入腾讯云活动页面参加优惠力度非常大的腾讯云3年和5年时长服务器活动,一次性买多年,免得续费贵,这样就可以获得最大的优惠折扣,省钱。
版权声明:xxxxxxxxx;
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态