背景介绍:希望在centos的docker容器上使用宿主机(ubuntu)的图形化界面
参考网上其他博主说的,在创建容器时添加参数 :-e DISPLAY=$DISPLAY
但是在容器里调用opencv相关接口时报错,cannot connect to X server
解决办法:在创建容器时添加--env="QT_X11_NO_MITSHM=1" 参数
docker run --name centos -dit --net=host --ipc=host -e DISPLAY=$DISPLAY -v /home/dmcc/Downloads/darknet:/root/darknet -v /tmp/.X11-unix:/tmp/.X11-unix --env="QT_X11_NO_MITSHM=1" centos:7.2
在创建容器之前,记得在宿主机上执行 xhost + (即允许所有客户端连接x server)