ubuntu18.04 配置docker内的gui程序 显示到宿主机器

场景1:

  1. 使用场景描述
    本机系统:ubuntu18.04
    docker的容器运行在本机系统上
    本机系统安装了nvidia显卡驱动
  2. 配置过程

    # 开启x服务访问权限
    xhost +
    
    # 安装NVIDIA Container Toolkit
    # 1、添加源
    distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
    sudo curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
    sudo curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
    # 2、安装并重启
    sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
    sudo systemctl restart docker
    # 3、测试 (直接打印出gpu 信息意味着成功)
    sudo docker run --name containername -it --gpus all  imgname:imgtag nvidia-smi
    
    # 在容器内部安装跟宿主机器一致的显卡驱动,其实是更新opengl版本为一致的
    # 参考:https://blog.csdn.net/qq_30356613/article/details/124623839
    # 下载驱动的脚本
    #!/bin/bash
    version="$(glxinfo | grep "OpenGL version string" | rev | cut -d" " -f1 | rev)"
    wget http://us.download.nvidia.com/XFree86/Linux-x86_64/"$version"/NVIDIA-Linux-x86_64-"$version".run
    mv NVIDIA-Linux-x86_64-"$version".run NVIDIA-DRIVER.run
    # 容器内部安装驱动(一路enter)
    apt-get install module-init-tools kmod
    sudo ./NVIDIA-DRIVER.run -a -N --ui=none --no-kernel-module
    # 测试效果
    rviz
    
    # 安装qt
    sudo apt-get install qt5-default
    
    #再次测试(ok)
    rviz

场景2

  1. 使用场景描述
    本机系统:ubuntu18.04
    本机显卡:nvidia,已经安装了显卡驱动
    服务器系统:ubuntu18.04
    container运行位置:服务器
    gui显示位置:本机系统
  2. 配置教程
    todo

你可能感兴趣的:(ubuntu18.04 配置docker内的gui程序 显示到宿主机器)