Tidy up the compose examples

This commit is contained in:
Josh.5
2023-07-21 11:08:19 +12:00
parent 659bde74f5
commit b75b496283
2 changed files with 61 additions and 29 deletions

View File

@@ -10,7 +10,6 @@ TZ='Pacific/Auckland'
USER_LOCALES='en_US.UTF-8 UTF-8'
DISPLAY=':55'
SHM_SIZE='2G'
## DOCKER_RUNTIME:
## Options: ['runc', 'nvidia']
## Description: The name of an implementation of OCI Runtime Spec
@@ -31,6 +30,20 @@ PGID='1000'
UMASK='000'
USER_PASSWORD='password'
# __ __ _
# | \/ | ___ __| | ___
# | |\/| |/ _ \ / _` |/ _ \
# | | | | (_) | (_| | __/
# |_| |_|\___/ \__,_|\___|
#
#
## MODE:
## Options: ['primary', 'secondary']
## Description: Steam Headless containers can run in a secondary mode that will only start
## a Steam process that will then use the X server of either the host or another
## Steam Headless container running in 'primary' mode.
MODE='primary'
# ____ _
# / ___| ___ _ ____ _(_) ___ ___ ___
# \___ \ / _ \ '__\ \ / / |/ __/ _ \/ __|
@@ -38,54 +51,63 @@ USER_PASSWORD='password'
# |____/ \___|_| \_/ |_|\___\___||___/
#
#
# Mode
## MODE:
## Options: ['primary', 'secondary']
## Description: Steam Headless containers can run in a secondary mode that will only start
## a Steam process that will then use the X server of either the host or another
## Steam Headless container running in 'primary' mode.
MODE='primary'
# Web UI
## WEB_UI_MODE:
## Options: ['vnc', 'neko', 'none']
## Description: Configures the WebUI to use for accessing the virtual desktop.
## Options: ['vnc', 'neko', 'none']
## Description: Configures the WebUI to use for accessing the virtual desktop.
## Supported Modes: ['primary']
WEB_UI_MODE='vnc'
## ENABLE_VNC_AUDIO:
## Options: ['true', 'false']
## Description: Enables audio over for the VNC Web UI if 'WEB_UI_MODE' is set to 'vnc'.
## Options: ['true', 'false']
## Description: Enables audio over for the VNC Web UI if 'WEB_UI_MODE' is set to 'vnc'.
ENABLE_VNC_AUDIO='true'
## PORT_NOVNC_WEB:
## Description: Configure the port to use for the WebUI.
## Description: Configure the port to use for the WebUI.
PORT_NOVNC_WEB='8083'
## NEKO_NAT1TO1:
## Description: Configure nat1to1 for the neko WebUI if it is enabled by setting 'WEB_UI_MODE' to 'neko'. This will need to be the IP address of the host.
## Description: Configure nat1to1 for the neko WebUI if it is enabled by setting 'WEB_UI_MODE' to 'neko'.
## This will need to be the IP address of the host.
NEKO_NAT1TO1=''
# Steam
## ENABLE_STEAM:
## Options: ['true', 'false']
## Description: Enable Steam to run on start. This will also cause steam to restart automatically if closed.
## Supported Modes: ['primary', 'secondary']
ENABLE_STEAM='true'
## STEAM_ARGS:
## Description: Additional steam execution arguments.
#STEAM_ARGS='-silent -bigpicture'
# Sunshine
## ENABLE_SUNSHINE:
## Options: ['true', 'false']
## Description: Enable Sunshine streaming service.
## Options: ['true', 'false']
## Description: Enable Sunshine streaming service.
## Supported Modes: ['primary']
ENABLE_SUNSHINE='false'
## SUNSHINE_USER:
## Description: Set the Sunshine service username.
## Description: Set the Sunshine service username.
#SUNSHINE_USER='admin'
## SUNSHINE_PASS:
## Description: Set the Sunshine service password.
## Description: Set the Sunshine service password.
#SUNSHINE_PASS='admin'
# Xorg
## ENABLE_EVDEV_INPUTS:
## Options: ['true', 'false']
## Description: Enable Keyboard and Mouse Passthrough. This will configure the Xorg server to catch all evdev events for Keyboard, Mouse, etc.
## Available Options: ['true', 'false']
## Description: Enable Keyboard and Mouse Passthrough. This will configure the Xorg server to catch all
## evdev events for Keyboard, Mouse, etc.
## Supported Modes: ['primary']
ENABLE_EVDEV_INPUTS='true'
# Nvidia specific config (not required for non Nvidia GPUs)
## NVIDIA_DRIVER_CAPABILITIES:
## Options: ['all', 'compute', 'compat32', 'graphics', 'utility', 'video', 'display']
## Description: Controls which driver libraries/binaries will be mounted inside the container.
## Options: ['all', 'compute', 'compat32', 'graphics', 'utility', 'video', 'display']
## Description: Controls which driver libraries/binaries will be mounted inside the container.
## Supported Modes: ['primary', 'secondary']
NVIDIA_DRIVER_CAPABILITIES='all'
## NVIDIA_DRIVER_CAPABILITIES:
## Options: ['all', 'none', '<GPU UUID>']
## Description: Controls which GPUs will be made accessible inside the container.
## Available Options: ['all', 'none', '<GPU UUID>']
## Description: Controls which GPUs will be made accessible inside the container.
## Supported Modes: ['primary', 'secondary']
NVIDIA_VISIBLE_DEVICES='all'

View File

@@ -30,19 +30,29 @@ services:
volumes:
# The location of your home directory.
- /opt/container-data/steam-headless/home/:/home/default/:rw
# The location where all games should be installed.
# This path needs to be set as a library path in Steam after logging in.
# Otherwise, Steam will store games in the home directory above.
- /mnt/games/:/mnt/games/:rw
# Input devices used for mouse and joypad support inside the container.
- /dev/input/:/dev/input/:ro
# The Xorg socket. This will be shared with other containers so they can access the X server.
# Select only one option:
# Option #1) Start a X server in the container to share with any other containers.
- /opt/container-data/steam-headless/.X11-unix/:/tmp/.X11-unix/:rw
# Option #2) Use an existing X server running on the host.
#- /tmp/.X11-unix/:/tmp/.X11-unix/:rw
# Pulse audio socket. This will be shared with other containers so they can access the audio sink.
- /opt/container-data/steam-headless/pulse/:/tmp/pulse/:rw
# Store dind var files in a volume
# Input devices used for mouse and joypad support inside the container.
- /dev/input/:/dev/input/:ro
# Store dind var files in a volume.
- steam-headless-var-lib-docker:/var/lib/docker/:rw
# Store flatpak var files in a volume
# Store flatpak var files in a volume.
- steam-headless-var-lib-flatpak:/var/lib/flatpak/:rw
volumes: