name: steam-headless services: steam: image: lscr.io/linuxserver/steam:version-f4f48542@sha256:d7b9fbf302e05ae79248d1171fe9751b354f8397eafa1e13a3df0aa6a75de0b4 container_name: steam-headless restart: unless-stopped shm_size: "1gb" environment: TZ: Europe/Stockholm PUID: "1000" PGID: "1000" STEAM_HTTP_PORT: "3000" STEAM_HTTPS_PORT: "3001" ports: - target: 3000 published: "3000" protocol: tcp - target: 3001 published: "3001" protocol: tcp volumes: - type: bind source: /DATA/AppData/$AppID/config target: /config # Required by LinuxServer Steam for bubblewrap/game namespaces. security_opt: - seccomp:unconfined - no-new-privileges:true # Keep capability surface minimal unless a specific game requires otherwise. cap_drop: - ALL x-casaos: envs: - container: TZ description: en_us: Timezone, for example Europe/Stockholm - container: PUID description: en_us: User ID for filesystem permissions - container: PGID description: en_us: Group ID for filesystem permissions ports: - container: "3000" description: en_us: Steam desktop GUI over HTTP - container: "3001" description: en_us: Steam desktop GUI over HTTPS volumes: - container: /config description: en_us: Steam home, configuration, and game files x-casaos: architectures: - amd64 main: steam category: phirna author: Zima Apps Team developer: linuxserver.io icon: https://cdn.simpleicons.org/steam tagline: en_us: Browser-based Steam desktop container for ZimaOS description: en_us: >- Runs LinuxServer Steam as a web-accessible desktop session. Optimized for amd64 and least-privilege defaults, with optional future Moonlight-focused expansion in a later phase. title: en_us: Steam Headless index: / port_map: "3001" scheme: https