Josh.5

Members
  • Posts

    498
  • Joined

  • Last visited

  • Days Won

    7

Posts posted by Josh.5

  1. 9 hours ago, MarianKoniuszko said:

    Hi, I forget to mention I connect new nvidia card to my tv with hdmi-DisplayPort cable. I don't have any dumy plug for my igpu (meybe I should try? Because my VAAPI transcoding is gone in Emby now).

     

    docker run
      -d
      --name='steam-headless'
      --net='host'
      -e TZ="Europe/Warsaw"
      -e HOST_OS="Unraid"
      -e HOST_HOSTNAME="unRAID"
      -e HOST_CONTAINERNAME="steam-headless"
      -e 'USER_PASSWORD'='mypassword'
      -e 'TZ'='Europe/Warsaw'
      -e 'USER_LOCALES'='en_US.UTF-8 UTF-8'
      -e 'WEB_UI_MODE'='vnc'
      -e 'NVIDIA_VISIBLE_DEVICES'='all'
      -e 'NVIDIA_DRIVER_CAPABILITIES'='all'
      -e 'DISPLAY'=':55'
      -e 'MODE'='primary'
      -e 'PORT_NOVNC_WEB'='8083'
      -e 'ENABLE_VNC_AUDIO'='false'
      -e 'ENABLE_EVDEV_INPUTS'='false'
      -l net.unraid.docker.managed=dockerman
      -l net.unraid.docker.webui='http://[IP]:[PORT:8083]/'
      -l net.unraid.docker.icon='https://raw.githubusercontent.com/Josh5/docker-steam-headless/master/images/steam-icon.png'
      -v '/mnt/user/appdata/steam-headless':'/home/default':'rw'
      -v '/mnt/user/GRY/':'/mnt/games':'rw'
      --runtime='nvidia'
      --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/tmp/pulse/':'/tmp/tmp/pulse/':'rw'
      -v '/dev/input/':'/dev/input/':'ro'
      -v '/run/udev/data/':'/run/udev/data/':'ro'
      -v 'steam-headless-var-lib-flatpak':'/var/lib/flatpak/':'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' 'josh5/steam-headless:latest'
    ed9521f2d2....
    
    The command finished successfully!


     

    It is failing because you have.

    -v '/dev/input/':'/dev/input/':'ro'   -v '/run/udev/data/':'/run/udev/data/':'ro'

     

    You have not updated your container template.

  2. I'll post a quick update here since there are people still coming here for support rather than discord.

    This weeks update adds some improvements to input devices.

    Your templates need to be updated to remove any mounts of /run/udev and /dev/input and you need ENABLE_EVDEV_INPUTS=true for mouse and keyboard support on moonlight.

     

    If you dont want to update, you can lock in docker tag :debian-0.1.0 rather than :latest. The easiest way to update your template is to just delete the docker container and reinstall it all from the apps tab.

  3. On 9/6/2023 at 8:30 AM, Ouadie BS said:

    Hello,

    First of all thank you for this awesome docker.

    Is there a way to launch multiple "principal" docker in the same server, the idea is to have multiple steam accounts playing at the same time.

    Thank you in advance for the feedback

    Not on the same GPU. This is something being looked into as time permits.

     

    (For better support or just for general discussions on future features in Steam Headless, join our conversation on discord. See link in first post of this thread.)

  4. On 9/13/2023 at 7:36 AM, z0nik said:

    Not sure if it's answered by anyone but searching has left me no answers.

    When I launch New World via Steam (and Proton configured OK) it's launching the game fine. Menu is OK. Everything looks smooth.

    But as soon as I enter the game and "look around" (mouse movement decides the camera in the game) then it spins like crazy.

     

    I've read a few other threads on different sites saying it's an issue with the remote connection not being able to understand the mouse input properly and so it ends up just constantly "looking down" and spinning sideways.

    Pressing Escape to bring up the menu- or any other menu-like function is just fine. Mouse is visible and works as expected.

     

    Anyone has some tips for me here?

    Currently running Steam-headless with RTX 3050 GPU passed through, latest 6.12.4 Unraid. Thanks to OP for this fantastic docker container.

     

    EDIT:

    I did some digging around, seems it's the NoVNC that doesn't support something called "Pointer Lock API" but it's been mentioned around the NoVNC project, but not actually implemented yet. 

    https://github.com/novnc/noVNC/issues/1493

     

    I saw a mention in your files Josh that you're thinking of scrapping both NoVNC and Neko in favor of KASMVNC, which seems to have this support in place already.

    Hoping you get the time to rework it to support this and it would be amazing. I'm no coder, so I can't really help out but hopefully this is at least a pointer in the right direction.

    Ive decided that Kasm is not a good fit for steam headless. Id advise you to use moonlight for gaming and only use the web UI for managing the desktop as required. Ive forked NoVNC and have started working on some solutions of my own. But it will take a long time before they are ready.

     

    (For better support or just for general discussions on future features in Steam Headless, join our conversation on discord. See link in first post of this thread.)

    • Thanks 1
  5. On 9/18/2023 at 12:54 AM, MarianKoniuszko said:

    That's what I mean. That don't work at all.

    This happens when you have an AMD or Intel GPU and you dont use an HDMI or DP dummy plug.

     

    (For better support or just for general discussions on future features in Steam Headless, join our conversation on discord. See link in first post of this thread.)

    • Thanks 1
  6. 3 hours ago, fanta989 said:

    hi everyone ive got a strange issue

     

    when i play steam remote play everything works fine with my pc and nvidia shield, but ive i try sunshine & moonlight my mouse/keyboard & controller dosnt work. (no input)

     

    does anyone know why???

     

    thanks

    You need to enable privileged mode for now. This is something im still working on improving.

     

    (For better support or just for general discussions on future features in Steam Headless, join our conversation on discord. See link in first post of this thread.)

  7. 6 minutes ago, Avsynthe said:

    Please excuse the double post. I've run into an actual issue with Sunshine that is replicable on fresh installs. Not sure if this is since the most recent image update a day or two ago.

     

    I noticed an issue when trying to start a stream from a Moonlight client where an error is thrown citing port forwarding instructions. Upon checking the container, I noticed the Sunshine icon is missing from the system tray in the top right, albeit the tile is still there and can be interacted with, it's just blank.

     

    Right clicking the tile and selecting Quit results in the tile reappearing after a second or so and not properly exiting, and "Open Sunshine" does nothing. I had to open the UI via Applications > Multimedia. I played with it for a but and thought I'd start with a fresh container and image. I noticed the tile acting in the exact same way on the fresh install, only this time there is no application entry for Sunshine to be seen.

     

    When accessing the web UI, the logs read this when attempting to start a stream from a client:

     

    [2023:08:31:20:36:03]: Info: Found encoder nvenc: [h264_nvenc, hevc_nvenc]
    [2023:08:31:20:36:03]: Info: Executing Do Cmd: [/usr/bin/xfce4-minimise-all-windows]
    [2023:08:31:20:36:04]: Info: Executing [Desktop]
    [2023:08:31:20:36:04]: Fatal: Couldn't bind Audio server to port [48000]: Address already in use
    [2023:08:31:20:36:04]: Error: Failed to start a streaming session

     

    When stopping the failed stream from the client, the logs read:

     

    [2023:08:31:20:36:24]: Info: Executing Undo Cmd: [/usr/bin/sunshine-stop]
    [2023:08:31:20:36:24]: Warning: Return code [1]

     

    Subsequent attempts throw a different port in the error:

     

    [2023:08:31:20:36:35]: Info: Found encoder nvenc: [h264_nvenc, hevc_nvenc]
    [2023:08:31:20:36:35]: Info: Executing Do Cmd: [/usr/bin/xfce4-minimise-all-windows]
    [2023:08:31:20:36:36]: Info: Executing [Desktop]
    [2023:08:31:20:36:36]: Error: Couldn't bind Control server to port [47999], likely another process already bound to the port
    [2023:08:31:20:36:36]: Error: Failed to start a streaming session

     

    When the container starts up and when I click Quit on the blank tray icon where it reappears, the container logs read:

     

    2023-08-31 20:58:52,277 INFO exited: sunshine (exit status 0; expected)
    2023-08-31 20:58:52,278 INFO reaped unknown pid 3294 (exit status 1)
    2023-08-31 20:58:53,282 INFO spawned: 'sunshine' with pid 4190
    2023-08-31 20:58:53,282 INFO reaped unknown pid 749 (exit status 0)
    2023-08-31 20:58:55,017 INFO success: sunshine entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
    2023-08-31 20:59:17,387 INFO reaped unknown pid 3723 (exit status 0)

     

    I noticed the dashboard now says the Sunshine version is Version 0.20.0 where as before it was a Dirty version. Not sure if that's relevant or if there is somehow a conflict between two fighting Sunshine instances. On one of the fresh installs, I tried installing Sunshine from the Software app over the current one, but the issue was the same. Is anyone else having issues?

    Thought I'd post a quick responce.

    First, jump on discord if you was support.

    Second, the latest builds have done away with the flatpak install of sunshine. This is now running it as an appimage and is being managed by the init process as a service. It will auto restart when it stops or crashes.

     

    The appimage does not have a tray icon showing for some reason. And the default browser is not set.

     

    So everything you described are a lot of very separate "issues".

  8. This Docker image has been re-based to Debian Bookworm. This fixes a few issues with Flatpak mostly, but also gives us access to some newer packages.

     

    I have also tidied up the Arch based Dockerfile. This Arch variant will be classed as a "community variant" and I will not be providing support for it (There may very well be dragons). This Arch variant will soon be automatically built as "josh5/steam-headless:arch" and will have updates at the same cycle as the Debian version at "josh5/steam-headless:latest" and "josh5/steam-headless:debian".


    For this release of with Debian 12 Bookworm, Docker in Docker is available, but is missing 'nvidia-container-toolkit' because NVIDIA are not yet supporting Bookworm. If they do not fix that in the coming weeks, I will just explore using Debian 11's version of it.

    • Like 1
  9. 2 minutes ago, mnovak said:

    JFC that's a lot

     

    THANK YOU!

    You're awesome, just in case you didn't already know lol

    Thanks. Yea. This was a decent update. I have been meaning to pivot the app installation for a while, but I never could get around to it.

    Moving forward, all "Apps" inside the container will be Flatpak first. Then Appimage. Then Docker (using Docker in Docker). And finally after those options I'll consider a installation via a script or deb package.
    Most of the cool things that we have on the Steam Deck are already either a Flatpak or an Appimage (Heroic, Lutris, Yuzu, Cemu, ProtonUp-QT, etc...). So to me this just makes sense.

    This also works better as it reduces the size of the Docker image and installs things to your `/home/default directory`.

    • Like 1
  10. Just a quick note here of some big changes in light of all of these issues...

     

    Today's builds contain the following changes:

    • Fixed issues with latest NVIDIA drivers (tested on Unraid 6.11.5 - I am not upgrading again).
      • Removes DISPLAY_DPI configuration.
      • Fixes issues with multiple NVIDIA GPUs on your system.
      • Many other tweaks to how our X server is running that may also benefit Intel/AMD users.
    • Fixes issues with logging into Steam.
    • Fixes issues with browsing to /mnt/games from Steam.
    • Updates Steam installation to Flatpak.
    • Automatically configure Steam with a second library pointing to "/mnt/games/GameLibrary/SteamLibrary" (change this as you like).
    • Removes unused code for launching other display environments. Only Xfce4 will be supported from here on out.
    • Tidies up Xfce4 menus - removing anything that was an eyesore or not necessary.
    • Adds ProtonUp-Qt by default
    • Adds a Software installation app to System > Software. Here you can install other Flatpaks like Heroic launcher and Lutris.
    • Removes support for Sunshine (will be re-added later on as a Flatpak when I have time).
    • Removes the "Installer - XXXXX" shortcuts from the menu for apps like Lutris and Heroic. Just install it from the Software app mentioned above.
    • Replaces Firefox with a Flatpak installation.
    • Removes old SSH code. This container does not support SSH.
    • Fixes issues with some Appimages.
    • Fixes issues with EmuDeck. This should now work exactly the same as it would on a Steam Deck.
    • Heaps of code tidying up and deleting of things I don't want in there.

     

    Some further notes:

    It will take longer to start the container the first time after this update. You may open noVNC and just see a black screen... Just wait, it is just installing some Flatpaks to your home directory before starting Xfce for the fist time.

    Since Steam is now running as a Flatpak, you will need to configure it again. Sorry.

     

    image.thumb.png.903bf220d68f9baba2462295a770771b.png

    image.thumb.png.23f87a514651b956edd2d33ac965c561.png

    image.thumb.png.a9179a413491a435e229e048070ffd13.png

    image.thumb.png.5008f199afabf557a7f8abea3abe9a41.png

     

    • Like 2
    • Thanks 1
  11. 25 minutes ago, RebelLion1519 said:

    Oh man, that's a major bummer. Sorry that you've been getting frustrated about this. I'll look into downgrading this weekend.

    The downgrade process is simple enough and my initial impression for the past few mins is that there are not problems with it.
    I am not running any VMs so I cannot say anything about that. But for Docker containers and plugins, it is fine to downgrade to 6.11.5 as I have just done.
    All I did was:

    1. Download the 6.11.5 tar from their website.
    2. Put the USB stick in my PC.
    3. Create a backup of the whole USB stick.
    4. Extract the 6.11.5 tar on my PC.
    5. Copy everything EXCEPT for the `/config` directory to the USB stick.
    6. Safely remove the USB stick, put it back in the server and boot it.
    7. Profit... All issues are now resolved if you run the older NVIDIA driver.
    • Like 1
  12. 1 hour ago, RebelLion1519 said:

    Anyone have an idea for those of us on Team Red?

    Do not upgrade to Unraid 6.12. I cannot express enough how annoyed I am with the amount of time I've wasted this week upgrading my system to 6.12 to explore this issue. This is headache inducing. The OS version has so many underlying issues that are not at all related to Steam Headless and is preventing me from be able to even improve the container. Eg. issues with the mover. Issues with services like SSH just stopping outright, issues with Dockerd.
    I cannot stress enough, do not upgrade to 6.12.x. If you are on 6.12, then consider backing up your /config directory on your USB stick and downgrade back to 6.11. This is what I am doing at the moment.

    • Like 1
  13. 7 hours ago, RebelLion1519 said:

    Thanks, tried that, it's still spinning. For fun, I tried to connect to it with Steam Link, and it's detected as a computer running Steam on the network. Can't enter the verification PIN, though, since all it's showing is the "Loading user data...." screen like before.

    I have the same issue now after upgrading to unraid 6.12. What version are you on?

  14. 1 hour ago, RebelLion1519 said:

    Hi! Just installed this, don't have my dGPU yet, so trying to just use with my AMD iGPU. Before rebuilding this PC as an unRAID server, the same AMD APU has been used for Steam for months. It's been stuck at "Loading user data..." in Steam for over an hour now.

     

    Also, maybe unrelated, I can't seem to get the time to work. I'm in CDT, I've tried both "North America/Chicago," and "UTC-5." Something I did changed it from AM/PM to 24-hour, but the time is still five hours ahead of me.

     

    Any suggestions for either of these would be greatly appreciated!

    Screenshot from 2023-07-02 08-53-13.png

    Try forcing a re-create on the container

  15. 7 hours ago, sage2050 said:

    Is this still being maintained and updated? The container got an update a few days ago but there are no new commits or releases on the git repo

    Yup. I'm still maintaining the current status. A few minor things are broken like the app install scripts, but so long as the container can run steam games, I'm happy. Users can follow instructions online to install lutris if they want it...

     

    Just to reiterate, I don't provide support in this forum any longer, all support and discussion happens on the discord server and is agnostic if unraid. If anyone wants to talk to me directly, you can come join us at https://unmanic.app/discord

     

    The container has a pipeline to automatically fetch the latest updates once a week. That's why you are seeing docker image updates weekly without commits.

     

    Since I manage a bunch of open source projects, my time gets split across them, this one has not received any love for a few months as I moved and never setup my server at the new place until last week. I've been busy writing new applications and updating other projects. Eventually steam headless will get more dev time from me for new features.

    • Like 1
  16. 38 minutes ago, Benoitvinc said:

    I just did change the network mode for the container from bridge mode to network ... and also update the container to the version release last night and now keyboard and mouse is working !!!

    You cannot run this container in bridge network mode if you want to use inputs outside of steam big picture. Bridge will prevent things like controllers from working in game.

  17. On 1/11/2023 at 3:51 PM, SeanFrank said:

    Thanks for your reply.  Hopefully this will help.

     

    The only directory I mapped in the the Docker template is "/mnt/user/Software/"

    This is an Unraid share named "Software", which is shared with others.

     

    I told Steam-headless container to use this directory for steam games:  /mnt/user/Software/RTP Games/Steam/

     

    When a user browses the "Software" share, they can see all files on all devices in my Unraid system.  Effectively exposing all files on the system to anyone with access to that share.  They can open and edit.

     

    So they can just just browse all the way to:

    Software\RTP Games\Steam\steamapps\compatdata\1493710\pfx\dosdevices\ZSXKM0~L\mnt\disk1

    Software\RTP Games\Steam\steamapps\compatdata\1493710\pfx\dosdevices\ZSXKM0~L\mnt\disk2

    Software\RTP Games\Steam\steamapps\compatdata\1493710\pfx\dosdevices\ZSXKM0~L\mnt\cache

    etc

     

    Everything between "\Steam\" and  "\mnt\" was generated by this container.  

    \mnt\disk1,2,3 cache, etc,  is every drive plugged into my system. 

    You can then open these folders and see everything on every disk.

     

    I had the Nvidia Available devices setting set to "all" before.  I JUST changed it and specified the GPU, and it didn't make a difference.  But these links work when the container was not running, so it probably wouldn't help now.

     

    If I look at the file properties of this folder:

    Software\RTP Games\Steam\steamapps\compatdata\1493710\pfx\dosdevices\ZSXKM0~L\mnt

    my computer thinks it is much bigger than my total storage space, lol!

     

    Hopefully this helps clarify the issue.

     

    Whatever happens, thanks for your work on this container.  It's the only way I managed to run any games on this system, after wasting far too many weekends trying to pass through a GPU to a VM.

    I took a quick look into this. This is happening because steam is creating a drive link "Z:" to your root path "/" as a symlink. If you then view this from the host Unraid OS it looks like this:
    image.thumb.png.935a0e9ce0be61b99feeff51c33d8dfc.png

     

    This is not something that the Steam Headless container is doing as much as it is what the Unraid host shares are doing. It has created a symlink to / and so if you brows that you will see all the things in your root filesystem.

     

    Hopefully this helps you in finding a solution that works for you. As for this container, there is not really any point in finding a fix. The solution as far as I can tell is to better configure your network shares for Unraid.

  18. On 1/9/2023 at 1:45 PM, SeanFrank said:

    I've run into an interesting issue where this container is exposing ALL files on my NAS to anyone who has access to the share it stores its games on.

     

    Here is an example of a folder that is exposed:  S:\RTP Games\Steam\steamapps\compatdata\1493710\pfx\dosdevices\ZSXKM0~L\mnt\disk8\Media\Cinema

     

    S is a Network drive on my system.  RTP games is where my game files live, and where this container keeps its steam directory.  It's in the folder I mapped, referenced below.  Anyone with access to this share, can access all files on every disk of my Unraid box.

     

    I checked the mapping on the container template, and I only gave it access to:  /mnt/user/Software/

     

    But somehow it can see every file on my Unraid box.  And windows users can click through the share to see them.  And the program Everything exposes them readily...  This is very concerning.  As a workaround, I'm going to create a new share, and put my Steam files there, and not give anybody access to it...

     

    But what could have caused this?  I didn't give it any credentials.  Maybe because its a Privileged application?

     

    I'm especially concerned that I'll delete something I don't want to, while I'm trying to clean this up...

    I'm not following sorry. Are you able to share a video or something explaining what is happening?