jammsen / docker-sons-of-the-forest-dedicated-server

Docker container to easily provision and manage Sons of the Forest Dedicated Server with Wine
https://hub.docker.com/r/jammsen/sons-of-the-forest-dedicated-server
134 stars 19 forks source link

Steam fails to update und fails to load "public/steambootstrapper_english.txt" #29

Closed Dosendusche closed 8 months ago

Dosendusche commented 9 months ago

Have you read the Important information text above

Current behavior

Before using this container I tried to do this: https://www.ionos.com/digitalguide/server/know-how/sons-of-the-forest-server-ubuntu-2204/ (only real tutorial on sotf linux servers i could find) abandoning that idea I started: Using the docker-compose method on my linux-server getting this output:

[+] Running 1/0
 ✔ Container sons-of-the-forest-dedicated-server  Running                                                                                                                                                                                                                                0.0s
Attaching to sons-of-the-forest-dedicated-server
sons-of-the-forest-dedicated-server  | Redirecting stderr to '/root/Steam/logs/stderr.txt'
sons-of-the-forest-dedicated-server  | ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Applying update...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] Verifying installation...
sons-of-the-forest-dedicated-server  | [  0%] Downloading Update...
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] !!! Fatal Error: Failed to load libsteam.so
sons-of-the-forest-dedicated-server  | >>> Doing an update of the gameserver
sons-of-the-forest-dedicated-server  | Redirecting stderr to '/root/Steam/logs/stderr.txt'
sons-of-the-forest-dedicated-server  | ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Applying update...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] Verifying installation...
sons-of-the-forest-dedicated-server  | [  0%] Downloading Update...
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] !!! Fatal Error: Failed to load libsteam.so
sons-of-the-forest-dedicated-server  | 0084:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0084:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0084:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0084:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | >>> Starting the gameserver
sons-of-the-forest-dedicated-server  | wine: failed to open "/sonsoftheforest/SonsOfTheForestDS.exe": c0000135
sons-of-the-forest-dedicated-server exited with code 53

It seems that it fails to load steam stuff and ultimately wine fails to start the server.

Desired behavior

That the container successfully start up steam. I do not know what else you need to know but i would be more than happy to provide any information you need.

Links to screenshots

No response

To Reproduce

Steps to reproduce the behavior:

  1. Copy docker-compose.yml
  2. make desired sub-directories
  3. execute command docker compose up
  4. See error

Software setup

Hardware setup

Additional context

No response

gitzec commented 9 months ago

Could you please share the content of your final docker-compose.yml file? Afterward, navigate to the directory where you’ve defined your volumes and execute a dd command there to check permissions.

How have you configured Docker? Are you running it as root, or are you using a user account that has been granted Docker permissions?

I uploaded the log of my sotf server here. Perhaps you could compare it with your own to identify where the differences begin.

jammsen commented 8 months ago

Hey @Dosendusche are you running Docker rootful or rootless? Please try a fresh container setup and try to give all your directories you try to volume-mount "chmod 777 directoryname".

Here and there a setup comes around that needs chmod 777, dunno why whats standing out in some configs and some weirdness, but may it helps.

I still consider this a security flaw though, so if this works, try to remove rights and try it again if you find the sweet-spot if you are security-concerned.

Dosendusche commented 8 months ago

Thanks for the answers. Just to clarify my server does not need a GPU to run this right? The final docker-compose is really just copied from here. I didn't think that it would need any changes. But anyway here it is:

version: '3.9'
services:
  sons-of-the-forest-dedicated-server:
    container_name: sons-of-the-forest-dedicated-server
    image: jammsen/sons-of-the-forest-dedicated-server:latest
    restart: always
    environment:
      ALWAYS_UPDATE_ON_START: 1
    ports:
      - 8766:8766/udp
      - 27016:27016/udp
      - 9700:9700/udp
    volumes:
      - ./steamcmd:/steamcmd
      - ./game:/sonsoftheforest
      - ./winedata:/winedata

Docker is a fresh install basically installed docker to try this. Currently i'm just sudo'ing everything. I switched to root but same result.

I just tried to remove my container and then start again with the folders set to chmod 777 sadly it still has the same issue. The log is a little different but still the same errors it seems.

[+] Running 2/2
 ✔ Network sonsoftheforest_default                Created                                                                                                                                                                                                                                0.1s
 ✔ Container sons-of-the-forest-dedicated-server  Created                                                                                                                                                                                                                                0.2s
Attaching to sons-of-the-forest-dedicated-server
sons-of-the-forest-dedicated-server  | >>> Doing a fresh install of the gameserver
sons-of-the-forest-dedicated-server  | >>> Checking if Wine is set in bashrc
sons-of-the-forest-dedicated-server  | >>> Setting up Wine in bashrc
sons-of-the-forest-dedicated-server  | Redirecting stderr to '/root/Steam/logs/stderr.txt'
sons-of-the-forest-dedicated-server  | ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Applying update...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] Verifying installation...
sons-of-the-forest-dedicated-server  | [  0%] Downloading Update...
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] !!! Fatal Error: Failed to load libsteam.so
sons-of-the-forest-dedicated-server  | >>> Doing an update of the gameserver
sons-of-the-forest-dedicated-server  | Redirecting stderr to '/root/Steam/logs/stderr.txt'
sons-of-the-forest-dedicated-server  | ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Applying update...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] Verifying installation...
sons-of-the-forest-dedicated-server  | [  0%] Downloading Update...
sons-of-the-forest-dedicated-server  | [  0%] Checking for available update...
sons-of-the-forest-dedicated-server  | [  0%] Download Complete.
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Extracting package...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Installing update...
sons-of-the-forest-dedicated-server  | [----] Failed to apply update, reverting...
sons-of-the-forest-dedicated-server  | [----] !!! Fatal Error: Failed to load libsteam.so
sons-of-the-forest-dedicated-server  | 0088:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0088:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0088:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | 0088:fixme:hid:handle_IRP_MN_QUERY_ID Unhandled type 00000005
sons-of-the-forest-dedicated-server  | >>> Starting the gameserver
sons-of-the-forest-dedicated-server  | wine: failed to open "/sonsoftheforest/SonsOfTheForestDS.exe": c0000135
sons-of-the-forest-dedicated-server exited with code 0
gitzec commented 8 months ago
    volumes:
      - ./steamcmd:/steamcmd
      - ./game:/sonsoftheforest
      - ./winedata:/winedata

./game:/sonsoftheforest means a folder game which resides in the same directory as docker-compose.yml is being mounted into the container at /sonsoftheforest.

Did you create these sub-/directories?

Check Getting started within readme.md

And no: sotf headless does not need a gpu (but throws a lot of errors because of this)

jammsen commented 8 months ago

@Dosendusche No - No GPU needed. Could you post me a "ls -laR" in your "root-gameserver-directory" please? And also a "cat docker-compose.yml" please.

Dosendusche commented 8 months ago

It worked now! I just tried this:

That is currently working. Difference being I was not on rootuser first time and I did not delete the volumes for the "fresh container setup" you mentioned. So it was just me being stupid sorry. Thanks for the help guys. I will jiggle around with chmod now.

Would you still like to have the ls -laR and cat docker-compose.yml? First one is laughingly big now since it finally was able to download all the files.

gitzec commented 8 months ago

Congrats!

docker-compose up -d will run your composition in daemon mode.

jammsen commented 8 months ago

@Dosendusche Hey nice, good to hear its working. No dont need the outputs if its working.