mnovak Posted July 7, 2023 Share Posted July 7, 2023 Hilariously I use this to stream to my Deck/Ally more often than I run native titles. Saves battery and gives me a beefier video card to crank up the visuals. Gueniunly appreciate your hard work on this! 3 Quote Link to comment
Josh.5 Posted July 10, 2023 Author Share Posted July 10, 2023 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. 1 Quote Link to comment
RebelLion1519 Posted July 12, 2023 Share Posted July 12, 2023 On 7/6/2023 at 8:19 PM, Josh.5 said: 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: Download the 6.11.5 tar from their website. Put the USB stick in my PC. Create a backup of the whole USB stick. Extract the 6.11.5 tar on my PC. Copy everything EXCEPT for the `/config` directory to the USB stick. Safely remove the USB stick, put it back in the server and boot it. Profit... All issues are now resolved if you run the older NVIDIA driver. Decided to wait until I got my new GPU (RX 6700 non XT, so still no NVIDIA workaround for me) installed before messing with this, so just now attempting to downgrade. Downgrading makes me nervous, so if you don't mind, I just wanted to double-check some stuff before starting. After I back up the USB and download and extract the previous OS version, I can literally delete all the folders except /config from the USB and just paste in the folders (except /config) from the OS download? I assume if things go bad I can similarly just copy from the backup back to the USB? I'm both on Linux, without the Windows easy installer, and also still not super comfortable in the command line. Once I'm on the prior version, will I need to do anything to prevent upgrading again? I'm not familiar with unRAID's version support, will it be okay to stay on 6.11 or will it no longer be maintained in the near future? Sorry for the noob questions. Thanks so much for your help and for this container! I'm really excited about the idea of it. Quote Link to comment
RebelLion1519 Posted July 14, 2023 Share Posted July 14, 2023 Well, I tried to downgrade and I think I've done something wrong. Server's not being found on the network. What's the best way to restore from my backup? Quote Link to comment
chandz05 Posted July 17, 2023 Share Posted July 17, 2023 On 7/6/2023 at 8:23 PM, Josh.5 said: 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. Hello, so I have been lurking this thread and testing out this container on UnRaid 6.12, then 6.12.2 and now 6.12.3. I was also getting the never-ending "Loading User Data" screen on 6.12.2, and the -vgui launch option didn't seem to work. However I have now done a clean install on 6.12.3 and -vgui *does* work, steam launches beautifully, but some of the screens (including the library lol) do not load. The workaround for that is to hit "view"->"small mode". This will load your library list, with none of the fancy game art. It is worth noting that I am *not* using a dedicated GPU but have passed-through my Intel CPU integrated graphics (/dev/dri). I can install and launch games (tested with FTL). There is a caveat though, which kinda defeats the whole purpose of the being "headless" - with -vgui enabled, Big Picture mode is also broken. It just doesn't load. It seems like Steam has also removed the option of loading into the old Big Picture mode. I am assuming the reason the new Steam UI/BPM doesn't load is because I'm using integrated graphics, so I am hoping someone with a dedicated GPU can now test this and get it working on 6.12.3+ Quote Link to comment
RebelLion1519 Posted July 17, 2023 Share Posted July 17, 2023 5 hours ago, chandz05 said: Hello, so I have been lurking this thread and testing out this container on UnRaid 6.12, then 6.12.2 and now 6.12.3. I was also getting the never-ending "Loading User Data" screen on 6.12.2, and the -vgui launch option didn't seem to work. However I have now done a clean install on 6.12.3 and -vgui *does* work, steam launches beautifully, but some of the screens (including the library lol) do not load. The workaround for that is to hit "view"->"small mode". This will load your library list, with none of the fancy game art. It is worth noting that I am *not* using a dedicated GPU but have passed-through my Intel CPU integrated graphics (/dev/dri). I can install and launch games (tested with FTL). There is a caveat though, which kinda defeats the whole purpose of the being "headless" - with -vgui enabled, Big Picture mode is also broken. It just doesn't load. It seems like Steam has also removed the option of loading into the old Big Picture mode. I am assuming the reason the new Steam UI/BPM doesn't load is because I'm using integrated graphics, so I am hoping someone with a dedicated GPU can now test this and get it working on 6.12.3+ Hey, I finally successfully downgraded to 6.11.5, and I'm still having issues. The "loading user data" window goes away, and I think Steam is running in the system tray. But I can't actually get the Steam interface open. I only need to be able to get Steam Link connected to my TV, then I'm fine with a UI in the container. I'm on an AMD dGPU now. Forgive my not understanding what you mean, but how do you apply the -vgui workaround? How do you get the "small mode" option? Quote Link to comment
chandz05 Posted July 19, 2023 Share Posted July 19, 2023 (edited) On 7/17/2023 at 6:05 PM, RebelLion1519 said: Hey, I finally successfully downgraded to 6.11.5, and I'm still having issues. The "loading user data" window goes away, and I think Steam is running in the system tray. But I can't actually get the Steam interface open. I only need to be able to get Steam Link connected to my TV, then I'm fine with a UI in the container. I'm on an AMD dGPU now. Forgive my not understanding what you mean, but how do you apply the -vgui workaround? How do you get the "small mode" option? Sure! For -vgui, in the VM, navigate to this location: /home/default/.config/autostart and edit (right-click->open with->gedit) the Steam.desktop file. At the end of the "Exec" line, add "-vgui" and save. Since this is the autostart file, I would do a container restart. I believe you can edit the Steam executable itself, so it will start with -vgui enabled whenever you open Steam, but I did it the autostart way. When the container restarts, Steam should load up. At this point, only the store page was loading for me. In Steam, on the top menu, click "View -> Small Mode". Your steam library games list should pop up. You can also switch to Big Picture mode from the View menu, but like I said, I have not had success with that. Edit: it is worth noting that as time goes on since the new Steam UI was launched, the old UI seems to get more and more broken, so there may be a point where this workaround will not work at all Edited July 19, 2023 by chandz05 Quote Link to comment
PixelPrint Posted July 19, 2023 Share Posted July 19, 2023 Is it possible to play audio on the local device? No streaming, because I want to play on the server itself, everything works great (video, keyboard, mouse, but no audio) Quote Link to comment
RebelLion1519 Posted July 20, 2023 Share Posted July 20, 2023 10 hours ago, chandz05 said: Sure! For -vgui, in the VM, navigate to this location: /home/default/.config/autostart and edit (right-click->open with->gedit) the Steam.desktop file. At the end of the "Exec" line, add "-vgui" and save. Since this is the autostart file, I would do a container restart. I believe you can edit the Steam executable itself, so it will start with -vgui enabled whenever you open Steam, but I did it the autostart way. When the container restarts, Steam should load up. At this point, only the store page was loading for me. In Steam, on the top menu, click "View -> Small Mode". Your steam library games list should pop up. You can also switch to Big Picture mode from the View menu, but like I said, I have not had success with that. Edit: it is worth noting that as time goes on since the new Steam UI was launched, the old UI seems to get more and more broken, so there may be a point where this workaround will not work at all You got me closer than I've ever gotten, I really thought it was going to work. Steam actually opened, long enough to connect on remote play. But after it's been open a few minutes, it disappears to the system try, and the TV with remote play is just showing the VM desktop. I've tried restarting multiple times, same thing every time. Steam--even the old UI--won't stay open for more than a couple of minutes. I'm really frustrated. Quote Link to comment
RebelLion1519 Posted July 20, 2023 Share Posted July 20, 2023 So after further fiddling, I've gotten Steam to stay open in the VM. Games themselves aren't opening, though. Steam shows they're open, and Steam Link shows that there's a game in progress. But the game never actually appears. If I go into System Settings in Steam though, I don't think it's detecting my actual graphics card. Maybe that's the problem, it's trying to run stuff on the virtual card? I have the Radeon TOP plugin installed, am I missing a step? Quote Link to comment
chandz05 Posted July 26, 2023 Share Posted July 26, 2023 (edited) On 7/19/2023 at 9:28 PM, RebelLion1519 said: So after further fiddling, I've gotten Steam to stay open in the VM. Games themselves aren't opening, though. Steam shows they're open, and Steam Link shows that there's a game in progress. But the game never actually appears. If I go into System Settings in Steam though, I don't think it's detecting my actual graphics card. Maybe that's the problem, it's trying to run stuff on the virtual card? I have the Radeon TOP plugin installed, am I missing a step? Can you see your graphics card in the VM? Hopefully someone else with a discrete AMD graphics card can help you from here Edited July 26, 2023 by chandz05 Quote Link to comment
RebelLion1519 Posted July 26, 2023 Share Posted July 26, 2023 1 hour ago, chandz05 said: Can you see your graphics card in the VM? Hopefully someone else with a discrete AMD graphics card can help you from here I had decided to just use a traditional VM with GPU passthrough and give up on steam-headless, but I wasn't having much luck with GPU passthrough either, and now I've broken something and I can't get my server to boot at all. I'm at the point where I'm strongly considering buying a cheap CPU/mobo for the server, and moving my current CPU/mobo and GPU to a new gaming only rig. Which is too bad, I really loved the idea of being able to use UNRAID to have one PC do everything I needed. Sorry, just a little exasperated. Quote Link to comment
MiniMoe Posted August 6, 2023 Share Posted August 6, 2023 I've installed EMU deck in this container and mounted an SSD to /mnt/games. I also installed emudeck to the same drive. I can run all my other emulators, but the PS2 one fails to launch from the script that's set up. [default@SteamHeadless ~]$ /mnt/games/emudeck/Emulation/tools/launchers/pcsx2-qt.sh /mnt/games/emudeck/Emulation/tools/launchers/pcsx2-qt.sh: 2: source: not found /mnt/games/emudeck/Emulation/tools/launchers/pcsx2-qt.sh: 3: rclone_downloadEmu: not found /mnt/games/emudeck/Emulation/tools/launchers/pcsx2-qt.sh: 11: [[: not found /mnt/games/emudeck/Emulation/tools/launchers/pcsx2-qt.sh: 23: Bad substitution Launching the appimage from the command line works, but launching from steam fails immediately. Is there anything I can do/change to get this working? I also have no audio, in steam link or moonlight/sunshine. any help would be appreciated:) Quote Link to comment
Onlypepe Posted August 7, 2023 Share Posted August 7, 2023 Hi, my docker container runs fine and it is listening on port 8083 but docker ps shows no port. The only thing that failed seems to be "WARN exited: steam (exit status 1; not expected)". Do you know what is happening? systemd-r 918 systemd-resolve 14u IPv4 890 0t0 TCP 127.0.0.53:53 (LISTEN) docker-pr 619353 root 4u IPv4 42652820 0t0 TCP *:9696 (LISTEN) docker-pr 619360 root 4u IPv6 42648970 0t0 TCP *:9696 (LISTEN) docker-pr 619616 root 4u IPv4 42652881 0t0 TCP *:3000 (LISTEN) docker-pr 619622 root 4u IPv6 42656781 0t0 TCP *:3000 (LISTEN) docker-pr 619674 root 4u IPv4 42656802 0t0 TCP *:7878 (LISTEN) docker-pr 619680 root 4u IPv6 42647420 0t0 TCP *:7878 (LISTEN) docker-pr 619697 root 4u IPv4 42649037 0t0 TCP *:6767 (LISTEN) docker-pr 619704 root 4u IPv6 42656807 0t0 TCP *:6767 (LISTEN) docker-pr 619901 root 4u IPv4 42655842 0t0 TCP *:8090 (LISTEN) docker-pr 619910 root 4u IPv6 42648304 0t0 TCP *:8090 (LISTEN) docker-pr 619979 root 4u IPv4 42650207 0t0 TCP *:6881 (LISTEN) docker-pr 619986 root 4u IPv6 42647477 0t0 TCP *:6881 (LISTEN) docker-pr 620142 root 4u IPv4 42651238 0t0 TCP *:8989 (LISTEN) docker-pr 620149 root 4u IPv6 42655011 0t0 TCP *:8989 (LISTEN) docker-pr 620286 root 4u IPv4 42655057 0t0 TCP *:8096 (LISTEN) docker-pr 620293 root 4u IPv6 42655060 0t0 TCP *:8096 (LISTEN) docker-pr 621128 root 4u IPv4 42655164 0t0 TCP *:8080 (LISTEN) docker-pr 621137 root 4u IPv6 42651471 0t0 TCP *:8080 (LISTEN) docker-pr 621177 root 4u IPv4 42651476 0t0 TCP *:8000 (LISTEN) docker-pr 621183 root 4u IPv6 42651479 0t0 TCP *:8000 (LISTEN) tcpserver 1061575 onlypepe 3u IPv4 44075235 0t0 TCP 127.0.0.1:32039 (LISTEN) nginx 1061578 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) websockif 1061581 onlypepe 3u IPv4 44070334 0t0 TCP *:32038 (LISTEN) nginx 1061596 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061597 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061600 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061602 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061606 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061607 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061608 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061609 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061610 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061611 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061613 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) nginx 1061616 onlypepe 5u IPv4 44071837 0t0 TCP *:8083 (LISTEN) python3 1061619 onlypepe 3u IPv4 44063710 0t0 TCP *:32037 (LISTEN) x11vnc 1061688 onlypepe 8u IPv4 44072500 0t0 TCP *:32036 (LISTEN) x11vnc 1061688 onlypepe 9u IPv6 44072501 0t0 TCP *:5900 (LISTEN) x11vnc 1061688 onlypepe 10u IPv6 44072502 0t0 TCP *:32036 (LISTEN) sunshine 1062289 onlypepe 33u IPv4 44084226 0t0 TCP *:48010 (LISTEN) sunshine 1062289 onlypepe 63u IPv4 44076000 0t0 TCP *:47990 (LISTEN) sunshine 1062289 onlypepe 66u IPv4 44076002 0t0 TCP *:47984 (LISTEN) sunshine 1062289 onlypepe 71u IPv4 44072636 0t0 TCP *:47989 (LISTEN) sshd 3570784 root 3u IPv4 25089422 0t0 TCP *:22 (LISTEN) sshd 3570784 root 4u IPv6 25089424 0t0 TCP *:22 (LISTEN) Quote Link to comment
Nokcha Posted August 10, 2023 Share Posted August 10, 2023 Hey All, I'm was able to get this installed with no issue, I can see it on my steam link, but the steam app itself never loads completely. I was able to get logged in but it just hangs on "loading user data" so I can never input the code my steam link wants me to put in. Any idea what's causing this? Thanks Quote Link to comment
marvelous-marv Posted August 11, 2023 Share Posted August 11, 2023 (edited) Hey, I have a very similar issue. I tried almost all the troubleshooting advice from the previous pages, but they didn't help. The main loading freezes directly after it says "Loading user data...". The loading animation freezes completely. Sometimes I can click on on the steam icon and it shows me the context menu, but selecting anything does nothing. I have installed the suggested older nvidia driver, reinstalled the container, deleted the .steam folder and rebooted. Nothing helped. Might try to rollback the Unraid Version as this is just a test before I decide to migrate completely. Are there any relevant logs or other infos that might help narrowing it down? //edit: Turn it I'm dumb. As this was a test system I hadn't the advanced settings view enabled and therefore didn't set the extra parameter to enable the GPU. It works now as expected... Leaving this in case someone else was on autopilot while setting this up... Edited August 11, 2023 by marvelous-marv Quote Link to comment
Smat Posted August 13, 2023 Share Posted August 13, 2023 On 1/27/2023 at 10:45 PM, PsYkoKeV said: Great Project and thanks for the work. I love trying out new stuff 🙂 Whish to get it working and use it as a secondary (maybe as primary also) Gaming Station for my wife and maybe me. Currently im running two Windows VMs, streaming via parsec. Second VM is off to utilise the GPU for other stuff. So the docker would make it even easier to switch between gaming nad non gaming. Now i got multiple Questions. 1. How to tell the Docker it should use GPU2 (/dev/dri/card1)? 2. How to enable H265 codec for streaming? 3. I got the same artifacts like randomninjaatk a few post before. Same AMD GPU To 2. Maybe iam trying out the Sunshine option and everything is working fine Tried the same config as on the windows machine. There i got "AMF HEVC" Codec. My Hardware: CPU AMD Ryzen 9 3900X 2x AMD 6700XT (MSI / XFX) Maybe helpful for somebody: I got a 21:9 Monitor with a resolution of 3440x1440 and my HDMI dummy ist not showing this Resolution nativly. You can add these by: cvt 3440 1440 60 xrandr --newmode WHAT_THE_LINE_ABOVE_TELLS_YOU eg. xrandr --newmode "3440x1440_60.00" 419.50 3440 3696 4064 4688 1440 1443 1453 1493 -hsync +vsync xrandr --addmode HDMI-0 3440x1440_60.00 I havent tested if these are persistent. Or like someone mentioned, add Display Environment Variables. Where did you enter these?? Quote Link to comment
Mrtj18 Posted August 14, 2023 Share Posted August 14, 2023 I just want to say thank you for this wonderful docker. It was a pain for me to setup but I got it rolling with steam and blizzard games. ( diablo 4 and hero's of the storm run perfectly) running sunshine/moonlight included in this docker is fantastic as well! Now my diablo4 deck sessions can last up to 5-6 hours as opposed to 1 1/2 hours, running the game on the device itself. Plus better graphics due to this doctker using my rtx3080. Now I just have to figure out how to run gog games inside this docker ( that's where I purchased cyberpunk) , and I'm set! Quote Link to comment
netboy Posted August 16, 2023 Share Posted August 16, 2023 I have everything setup and running well other than when I try to login with a second instance of steam. I get a blank white box I can't do anything with. If I remove the --runtime=nvidia parameter the login screen has color but still unreadable. Quote Link to comment
micko77 Posted August 17, 2023 Share Posted August 17, 2023 There is an issue in the current container with su and sudo. As built, default user cannot sudo and cannot su to root. The container does not have SUID set for both su and sudo commands and has 0777 set for sudo.conf and sudoers. I initially tried running the fix in the init.d script, but that runs at user level and would not fix the problem. You can fix it in the unraid console, but then it will break every time the container is updated. I ended up writing a user script to fix the issue with the following commands: docker exec steam-headless chmod u+s /bin/su docker exec steam-headless chmod u+s /usr/bin/sudo docker exec steam-headless chmod 0644 /etc/sudo.conf docker exec steam-headless chmod 0644 /etc/sudoers Quote Link to comment
onionfire Posted August 22, 2023 Share Posted August 22, 2023 Can't seem to find an answer to this, but does anyone know a way to reset the password? Deleting and adding the container didn't help - neither did deleting the default /mnt/user/appdata/steam-headless folder. Quote Link to comment
Avsynthe Posted August 23, 2023 Share Posted August 23, 2023 (edited) Hey all, First of all, GREAT project. It's turned my switch running android into an all-in-one gaming solution. I read somewhere there were scripts to install other launchers like Epic games and such though I can't see anything additional. Is this something I have to create myself? What's the correct way of installing these and which ones are supported? Also would this support something like Moonlight Internet Hosting Tool to get moonlight working away from the home network? I found tailscale had bandwidth issues. Thanks! Edited August 23, 2023 by Avsynthe Quote Link to comment
Mrtj18 Posted August 26, 2023 Share Posted August 26, 2023 On 8/22/2023 at 11:32 PM, Avsynthe said: I read somewhere there were scripts to install other launchers like Epic games and such though I can't see anything additional. Also would this support something like Moonlight Internet Hosting Tool to get moonlight working away from the home network? I found tailscale had bandwidth issues. Thanks! To answer your first question, you can use the built in app called Lutris. Go to applications, then games, then click on the Lutris app. Here you can install game launchers and install games from Epic store, GOG, and others. And this has built in moonlight/sunshine support. after you create an account as soon as the docker starts. your good to go. I connect to it with my steam deck to play games when i dont want to use steam built in steam streaming option Quote Link to comment
Avsynthe Posted August 31, 2023 Share Posted August 31, 2023 (edited) On 8/27/2023 at 1:54 AM, Mrtj18 said: To answer your first question, you can use the built in app called Lutris. Go to applications, then games, then click on the Lutris app. Here you can install game launchers and install games from Epic store, GOG, and others. And this has built in moonlight/sunshine support. after you create an account as soon as the docker starts. your good to go. I connect to it with my steam deck to play games when i dont want to use steam built in steam streaming option Thanks for your response. Under Applications > Games I have Steam and nothing else. This is where the confusion is for me, there's nothing else there. Was this removed? Searching the application finder also yielded nothing, it doesn't seem to be installed. EDIT: Just learned that this was removed and is installable now through the Software program instead. Regarding Moonlight/Sunshine, my question was is there a way to connect to Sunshine via Moonlight over the Internet remotely and away from the home network? I have a dynamic external IP so I'm looking for a good solution without having to check the IP of the house every time I want to connect when I'm away. EDIT 2: Got this to work using Cloudflare DDNS and an unproxied CNAME. This is what I was trying the whole time but the issue was the Moonlight client didn't like the "https://" before the hostname. Edited August 31, 2023 by Avsynthe 1 Quote Link to comment
mnovak Posted August 31, 2023 Share Posted August 31, 2023 11 minutes ago, Avsynthe said: Connect to Sunshine via Moonlight over the Internet remotely and away from the home network? The built in VPN using Wireguard can give you direct connection to the server. Easy peasy lemon squeezy. Alternatively I also use Tailscale now that it's free-ish to connect my ROG Ally and Steam Deck to Headless when I'm away from home. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.