Docker NVIDIA EGL桌面 - 基于Kubernetes的开源远程云/HPC图形或游戏流媒体平台

Ray

docker-nvidia-egl-desktop

Docker NVIDIA EGL桌面简介

Docker NVIDIA EGL桌面是一个为Kubernetes设计的KDE Plasma桌面容器,旨在提供开源的远程云/HPC图形或游戏流媒体平台。它具有以下主要特点:

  • 支持通过WebRTC和HTML5为NVIDIA GPU提供OpenGL EGL和GLX、Vulkan以及Wine/Proton功能
  • 直接访问GPU,无需X.Org X11服务器,使用EGL和VirtualGL以及Vulkan
  • 不需要/tmp/.X11-unix主机套接字或主机配置
  • 提供两种Web界面选项:
    1. 默认的Selkies-GStreamer WebRTC HTML5界面
    2. 备用的KasmVNC WebSocket HTML5界面

这个容器完全由与供应商无关的应用程序和协议组成,除了NVIDIA用户空间驱动程序组件。这意味着它也可以与AMD和Intel等其他供应商的GPU一起使用,只需使用相应供应商的容器工具包/运行时或Kubernetes设备插件即可。

使用要求

使用Docker NVIDIA EGL桌面需要满足以下要求:

  • 主机NVIDIA GPU驱动程序版本至少为450.80.02,最好是470.42.01
  • 需要在主机上配置NVIDIA Container Toolkit以分配GPU
  • 建议使用最新的次要版本(000.xx.00中的xx)
  • 所有Maxwell或更高代的消费级、专业级或数据中心级GPU都应该可以运行此容器
  • Kepler GPU未经测试,可能无法支持NVENC后端,但可以使用后备软件加速功能

部署方法

Docker NVIDIA EGL桌面支持以下几种部署方式:

使用Docker运行

  1. 使用Docker、Podman或其他支持NVIDIA的容器运行时运行容器:
docker run --name egl -it -d --gpus 1 --tmpfs /dev/shm:rw -e TZ=UTC -e DISPLAY_SIZEW=1920 -e DISPLAY_SIZEH=1080 -e DISPLAY_REFRESH=60 -e DISPLAY_DPI=96 -e DISPLAY_CDEPTH=24 -e PASSWD=mypasswd -e SELKIES_ENCODER=nvh264enc -e SELKIES_VIDEO_BITRATE=8000 -e SELKIES_FRAMERATE=60 -e SELKIES_AUDIO_BITRATE=128000 -e SELKIES_BASIC_AUTH_PASSWORD=mypasswd -p 8080:8080 ghcr.io/selkies-project/nvidia-egl-desktop:latest
  1. 或者使用Docker Compose:
# docker-compose.yml
version: '3'
services:
  egl:
    image: ghcr.io/selkies-project/nvidia-egl-desktop:latest
    ...
# 启动容器
docker compose up -d
# 停止容器  
docker compose down
  1. 使用浏览器连接到8080端口的Web服务器。

使用Kubernetes运行

  1. 创建Kubernetes Secret来存储身份验证密码:
kubectl create secret generic my-pass --from-literal=my-pass=YOUR_PASSWORD
  1. 编辑egl.yml文件并创建Pod:
kubectl create -f egl.yml
  1. 连接到端口8080上的Web服务器。

WebRTC和防火墙问题

对于Selkies-GStreamer WebRTC HTML5界面,可能需要额外的网络配置:

  • 使用内部TURN服务器
  • 使用主机网络
  • 使用外部TURN服务器

详细配置说明请参考项目文档。

故障排除

如果遇到问题,可以检查以下几点:

  • 确保正确配置了NVIDIA Container Toolkit
  • 检查主机NVIDIA GPU驱动程序是否为nvidia-headless变体
  • 检查NVIDIA_DRIVER_CAPABILITIES环境变量设置
  • 确保/dev/shm有足够的容量

更多故障排除指南请参考项目文档。

Docker NVIDIA EGL桌面为远程图形和游戏流媒体应用提供了一个强大而灵活的解决方案。通过合理配置和使用,它可以在各种云和HPC环境中实现高性能的远程桌面体验。

avatar
0
0
0
相关项目
Project Cover

Topxtral-4x7B-v0.1

本文详细分析了Docker容器化平台的优势和挑战。在隔离、可移植性、资源效率、快速开发与部署、版本控制等方面,Docker展现了明显的优势。但在学习曲线、复杂性、安全性等方面也存在一定挑战。文章旨在帮助读者客观理解Docker在现代软件开发中的角色。

Project Cover

llama-160m-accelerator

这是一个为JackFram/llama-160m模型设计的加速器项目,借鉴了Medusa推测解码架构的思想。该加速器通过改造MLP为多阶段结构,实现了基于状态向量和先前采样令牌的单token预测,有效提升了模型推理速度。项目支持与vLLM和Hugging Face TGI等工具集成,为大型语言模型的高效部署提供了实用解决方案。加速器的训练过程轻量化,能够在短时间内完成,适用于各种规模的生成式模型。

Project Cover

metaflow-service

Metaflow-service为Metaflow提供元数据服务实现,通过轻量级数据库封装跟踪Flows、Runs、Steps等Metaflow实体的元数据。项目包含元数据服务和迁移服务,支持数据库迁移和版本兼容性管理。提供REST API接口,支持Docker容器部署,简化机器学习工作流的元数据管理流程。

Project Cover

mlflow-docker

mlflow-docker项目提供了一个简化的Docker配置,用于快速部署MLflow环境。该方案集成了Minio S3作为工件存储和MySQL作为MLflow后端存储。项目通过.env文件配置和docker compose命令实现一键部署,同时提供了Python开发所需的bash脚本。此外,项目还包含客户端配置脚本,便于在Python开发中使用MLflow。这一解决方案适用于需要迅速搭建MLflow项目环境的开发者。

Project Cover

voltaserve

Voltaserve是一个开源云存储平台,主要功能包括海量图像处理、文档洞察提取、大型视频流式传输、文档权限管理和3D模型预览。该项目支持实时协作和WebDAV协议,可跨设备使用。Voltaserve采用Docker容器化部署,为创意工作者提供便捷的文件管理和协作解决方案。

Project Cover

llm-starter-pack

llm-starter-pack是一个云原生LLM入门工具包,简化了在Kubernetes环境中部署和运行大语言模型的过程。项目提供完整脚本和工具,用于创建kind集群、应用Kubernetes配置,并启动LLM聊天机器人演示。包含从启动到关闭的全流程操作指南,支持macOS、Linux和Windows系统。适合开发者快速上手云原生LLM部署。

Project Cover

alexandria

Alexandria开源搜索引擎项目聚焦高效全文索引和哈希表技术,提供详细文档和多种构建方式。支持Docker容器化和手动构建,配备完整测试套件保障质量。项目为开发者提供了深入研究和参与搜索引擎开发的平台,是搜索技术学习和创新的重要资源。

Project Cover

openserp

OpenSERP是一款开源工具,为开发者提供Google、Yandex和Baidu等主流搜索引擎的结果获取API和CLI接口。该工具支持Docker部署和命令行使用,可设置语言、日期和文件类型等多种搜索参数。OpenSERP为需要大规模搜索数据的项目提供了一种免费且灵活的解决方案。

Project Cover

Awesome-RCE-techniques

该项目提供开源远程代码执行(RCE)技术知识库,涵盖24种应用于CMS、框架和LMS等系统的RCE方法。每种技术配备Docker测试环境,便于实践学习。项目不断更新,欢迎技术贡献。适合安全研究和渗透测试学习,也可用于提升应用安全性。

最新项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号