天天看點

UBUNTU 下面的DOCKER使用圖形界面

ubuntu下docker容器中開啟圖形界面:

轉載自:https://blog.csdn.net/ericcchen/article/details/79253416

方法一:開啟SSH服務

詳細開啟流程:https://www.cnblogs.com/xingyunfashi/p/8857093.html

利用SSH隧道傳輸圖形内容

方法二:啟動容器時添加配置選項,使用volume挂載宿主X11(推薦這種方法)

1)首先,在主系統裡運作

$ sudo apt-get install x11-xserver-utils

$ xhost +

UBUNTU 下面的DOCKER使用圖形界面

這兩句的作用是開放權限,允許所有使用者

2)在啟動docker容器時,添加選項如下:

 docker run  -it   -v /tmp/.X11-unix:/tmp/.X11-unix  -e DISPLAY=unix$DISPLAY   -e GDK_SCALE   -e GDK_DPI_SCALE     IMAGESNAME  /bin/bash

注意,這種方法要求容器使用使用者不得是root ,在DockerFile的時候可以加上

UBUNTU 下面的DOCKER使用圖形界面

方法三:已經啟動的容器修改系統參數

1)使用 ifconfig 檢視主機和docker的IP位址 

例如:主機的IP為 xxx 

docker 的IP為YYY 

2)docker 中

export DISPLAY= XXX       #把環境變量映射到主機IP

3.)主機中

sudo gedit /etc/lightdm/lightdm.conf      #增加一行    xserver-allow-tcp=true

sudo systemctl restart lightdm               

xhost  +                #注意加号前應有空格

以後每次重新開機時,還是要在主機裡運作一下 xhost +,在docker裡運作一下export DISPLAY= XXX 。 

這種方式用的是IP位址,在系統沒聯網時,網卡就沒有配置設定的IP位址了,這種方法就行不通了

測試是否配置成功:

在docker容器中運作

UBUNTU 下面的DOCKER使用圖形界面