steam-headless

steam-headless

Docker 应用程序 from Josh.5's Repository

概述

Headless Steam Service
Remote Game Streaming Server. Play your games either in the browser with audio or via Steam Link or Moonlight. Play from another Steam Client with Steam Remote Play.

Features:
  • Steam Client configured for running on Linux with Proton
  • Moonlight compatible server for easy remote desktop streaming
  • Easily install additional launchers like EmulationStation, Heroic and Lutris
  • Full video/audio noVNC web access to a Xfce4 Desktop
  • NVIDIA, AMD and Intel GPU support
  • Full controller support
  • Support for Flatpak and Appimage installation
  • Root access
  • Based on Debian Bookworm
Notes: ADDITIONAL SOFTWARE:

If you wish to install additional applications, you can generate a
script inside the ~/init.d directory ending with ".sh". This will be executed on the container startup.

STORAGE PATHS:

Everything that you wish to save in this container should be stored in the home directory or a docker container mount that you have specified. All files that are store outside your home directory are not persistent and will be wiped if there is an update of the container or you change something in the template.

GAMES LIBRARY:

It is recommended that you mount your games library to /mnt/games/GameLibrary/SteamLibrary and configure Steam to add that path.

AUTO START APPLICATIONS:

In this container, Steam is configured to automatically start. If you wish to add additional services to automatically start, add them under Applications > Settings > Session and Startup in the Web UI.

NETWORK MODE:

If you want to use the container as a Steam Remote Play (previously "In Home Streaming") host device you should set the "Network Type:" to "Host". This is a requirement for controller hardware to work and to prevent traffic being routed through the internet since Steam thinks you are on a different network.

NVIDIA GPU:

To enable NVIDIA GPU support, ensure that you have installed the Nvidia-Driver plugin and add the "--runtime='nvidia'" parameter added to "Extra Parameters:"

AMD GPU:

To enable AMD GPU support, ensure that you have installed the Radeon-TOP plugin.

AMD OR INTEL HW ACCELERATED VIDEO ENCODING:

To enable support for VAAPI HW Accelerated Video Encoding, add the "--device='/dev/dri'" parameter added to "Extra Parameters:"

USING HOST INPUT DEVICES:

If you wish to connect a keyboard/mouse to this container, you should run it with the "Privileged:" flag "On".
Likewise if you have issues with remote controllers, try toggling this on.

USING HOST X SERVER:

If your host is already running X, you can just use that. To do this, be sure to configure:

  • DISPLAY=:0
    (Variable) - Configures the sceen to use the primary display. Set this to whatever your host is using
  • MODE=secondary
    (Variable) - Configures the container to not start an X server of its own
  • HOST_DBUS=true
    (Variable) - Optional - Configures the container to use the host dbus process
  • /run/dbus:/run/dbus:ro
    (Mount) - Optional - Configures the container to use the host dbus process

要求


        **Nvidia-Driver plugin** (nVidia Support)
        **Radeon-TOP plugin** (AMD Support)
    

运行时参数

网络用户界面
http://[IP]:[PORT:8083]/
网络
host
外壳
bash
特权
false
额外参数
--hostname='SteamHeadless' --add-host='SteamHeadless:127.0.0.1' --restart='unless-stopped' --shm-size='2G' --ipc='host' -v '/tmp/.X11-unix/':'/tmp/.X11-unix/':'rw' -v '/tmp/pulse/':'/tmp/pulse/':'rw' --ulimit='nofile=1024:524288' --device='/dev/fuse' --device='/dev/uinput' --device-cgroup-rule='c 13:* rmw' --cap-add='NET_ADMIN' --cap-add='SYS_ADMIN' --cap-add='SYS_NICE' --security-opt='seccomp=unconfined'

模板配置

AppdataPathrw

Default user home directory. All application software and configuration will be saved into this directory. Any files saved outside of this path will be cleared if the container image this templated is updated.

目标
/home/default
默认值
/mnt/user/appdata/steam-headless
价值
/mnt/user/appdata/steam-headless
GamesPathrw

Option path to your games. This path will need to also be configured in Steam after the first boot.

目标
/mnt/games
默认值
/mnt/user/Games
价值
/mnt/user/Games
User passwordVariable

The password for this container. Note: This password will also be used for the root user. However, the default user has sudo access.

目标
USER_PASSWORD
默认值
password
价值
password
TimezoneVariable

Enter your local timezone. You can find a full list of supported timezones in: '/usr/share/zoneinfo' (eg: 'Etc/UTC' or 'Australia/Melbourne',...)

目标
TZ
默认值
Pacific/Auckland
价值
Pacific/Auckland
LocalesVariable

Enter your prefered locales. You can find a full list of supported languages in: '/usr/share/i18n/SUPPORTED' (eg: 'en_US.UTF-8 UTF8' or 'de_DE.UTF-8 UTF-8',...)

目标
USER_LOCALES
默认值
en_US.UTF-8 UTF-8
价值
en_US.UTF-8 UTF-8
NVIDIA_PATCH_VERSIONVariable

Set with a commit sha or branch name from the https://github.com/keylase/nvidia-patch project. This will download the patch and apply it to the NVIDIA drivers. Leave blank to disable this feature and not patch the drivers.

Web UI ModeVariable

Options: ['vnc', 'neko', 'none']. Select a Web UI to run. Each has their own pros/cons. Set to 'none' to disable the Web UI. Note: The Web UI is disabled if the container is run in 'secondary' mode.

目标
WEB_UI_MODE
默认值
vnc
价值
vnc
Nvidia GPU UUIDVariable

For users with multiple GPUs, add the ID found under the

目标
NVIDIA_VISIBLE_DEVICES
默认值
all
价值
all
Driver CapabilitiesVariable
目标
NVIDIA_DRIVER_CAPABILITIES
默认值
all
价值
all
Display IDVariable

Set the X display. To use the host X server, set this to :0 (or whatever your host is currently running in /tmp/.X11-unix/X*)

目标
DISPLAY
默认值
:55
价值
:55
ModeVariable

Options: ['primary', 'secondary']. Most of the time this should be set to 'primary' on a headless server. If your server is already running an X server that you wish to use, set this to 'secondary'.

目标
MODE
默认值
primary
价值
primary
Web UI PortVariable
目标
PORT_NOVNC_WEB
默认值
8083
价值
8083
Enable Web UI AudioVariable

Enable Web UI Audio. This creats a opus encoded audio websocket that will tie into the VNC Web UI. Disable this if your browser is incompatible or you do not wish for this additional process overhead.

目标
ENABLE_VNC_AUDIO
默认值
true
价值
false
Enable Keyboard & Mouse PassthroughVariable

Options: ['true', 'false']. Enable Keyboard and Mouse Support (Including Passthrough). This will configure the X server to catch all evdev events for Keyboard, Mouse, etc.

目标
ENABLE_EVDEV_INPUTS
默认值
true
价值
true

下载统计数据

713,790
下载总数
43,896
本月
38,037
平均每月

长期下载总量

加载图表...

详细信息

存储库
josh5/steam-headless:latest
最后更新2026-05-23
初见2022-01-10

在Unraid 上运行 steam-headless 。

steam-headless 已被列入Unraid OS 的社区应用程序。探索Unraid ,构建灵活的家庭服务器、NAS 或家庭实验室。