Docker在容器中运行GUI软件并显示界面

2,268 阅读1分钟

核心是使用本地显示器,要在启动docker image前添加一些配置

  1. 首先在本机里安装相关依赖(只需执行一次,之后的命令每次启动需要GUI的docker都需要执行)
sudo apt-get install x11-xserver-utils
  1. 开放权限
xhost +
  1. 添加docker参数选项
    • -v /tmp/.X11-unix:/tmp/.X11-unix \: 共享本地unix端口
    • -e DISPLAY=unix$DISPLAY \: 修改环境变量DISPLAY
    • -e GDK_SCALE
    • -e GDK_DPI_SCALE

最终启动testname:v0镜像的命令是:

xhost +

sudo docker run -it \
  -v /etc/localtime:/etc/localtime:ro \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  -e DISPLAY=unix$DISPLAY \
  -e GDK_SCALE \
  -e GDK_DPI_SCALE \
  testname:v0 \
  /bin/bash

之后在容器中启动一些画图或者gui窗口,就可以利用本机的显示屏进行窗口显示量