Logo

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

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环境中实现高性能的远程桌面体验。

相关项目

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
FreeGPT
FreeGPT是一个开源项目,提供用户友好的WebUI界面,无需API密钥即可免费访问ChatGPT功能。项目集成G4F API,支持GPT-3.5和GPT-4模型,并提供增强的越狱功能。FreeGPT还包括Docker支持和自动代理功能,便于部署和使用。作为开源的ChatGPT替代方案,FreeGPT旨在促进AI技术的学习和研究。
Project Cover
poseidon
Poseidon是一个开源的软件定义网络态势感知系统,通过机器学习自动分析网络流量。它能识别网络节点、理解行为模式,实现网络可视化和异常检测。Poseidon可与Faucet等SDN控制器集成,为网络管理提供全面的监控和安全能力。

最新项目

Project Cover
豆包MarsCode
豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。
Project Cover
AI写歌
Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。
Project Cover
商汤小浣熊
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
Project Cover
有言AI
有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。
Project Cover
Kimi
Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。
Project Cover
吐司
探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。
Project Cover
SubCat字幕猫
SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。
Project Cover
AIWritePaper论文写作
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。
Project Cover
稿定AI
稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。
投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号