Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to start container process: exec: "/servermanager.sh": permission denied - Day 1 Release Bug-Fixes - Community-Thread #1

Closed
1 task done
Fifthdread opened this issue Jan 19, 2024 · 54 comments
Assignees
Labels
bug Something isn't working enhancement New feature or request help wanted Extra attention is needed question Further information is requested

Comments

@Fifthdread
Copy link

Have you read the Important information text above

  • Yes i did

Current behavior

Container will not start with the provided Docker Compose. Trying to deploy the container via Portainer. I created an app-template using the provided Docker Compose and I receive the below error when trying to deploy the image:

Deployment error
failed to deploy a stack: Container palworld-dedicated-server Creating Container palworld-dedicated-server Created Container palworld-dedicated-server Starting Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "/servermanager.sh": permission denied: unknown

This could be a lack of understanding on my part. Thanks for any help you can provide.

Desired behavior

Container should start

Links to screenshots

image

To Reproduce

Steps to reproduce the behavior:

  1. Create App-Template
  2. Paste Docker Compose template and modify env variables
  3. Deploy new container based on template
  4. See error

Software setup

  • OS: Proxmox
  • Docker:

Hardware setup

  • vCPU: 3950x
  • RAM: 64gb
  • Disk: 2tb

Additional context

No response

@TheRealSphyxia
Copy link

Attempting to run with docker compose fails to start with the below error code

image

Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "/servermanager.sh": permission denied: unknown

@Fifthdread
Copy link
Author

Yep so I'm not the only one. Trying to compare this project to other SteamCMD based dedicated servers to find the issue until the maintainer takes a look...

@lem0ke
Copy link

lem0ke commented Jan 19, 2024

I'm having this problem too.docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "/servermanager.sh": permission denied: unknown.

@Jpiniau
Copy link

Jpiniau commented Jan 19, 2024

I have the same issue, I think the probleme can be solve by add RUN chmod +x servermanager.shafter ADD servermanager.sh /servermanager.sh in the Dockerfile

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Im on it and testing fixes right now.

@Fifthdread
Copy link
Author

Im on it and testing fixes right now.

Thanks bro. I had 20 tabs open trying to figure it out myself. Hope it works!

@TheRealSphyxia
Copy link

Progress!

image

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

That bug is fixed, now it seems like Volumes wont be recognized

@Fifthdread
Copy link
Author

That bug is fixed, now it seems like Volumes wont be recognized

Awesome. The container deployed this time. Now I will test to see if it works properly. I appreciate your quick response to this issue!

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

AH got the error identified ... really weird though

Guys make sure you do chmod 777 game on your host, otherwhise the user inside Docker cant sometimes not write to that directory and does it in a temporary directory.

@lem0ke
Copy link

lem0ke commented Jan 19, 2024

AH got the error identified ... really weird though

Guys make sure you do chmod 777 game on your host, otherwhise the user inside Docker cant sometimes not write to that directory and does it in a temporary directory.

Can you be more detailed? I'm not that familiar with Linux systems,thks

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

On your Docker-Host you created the docker-compose.yml and the game directory. That directory needs full permissions. You can do that with chmod 777 game.

@Fifthdread
Copy link
Author

image

Is this expected behavior or am I doing something wrong here? Can't seem to connect or anything

@lem0ke
Copy link

lem0ke commented Jan 19, 2024

On your Docker-Host you created the docker-compose.yml and the game directory. That directory needs full permissions. You can do that with chmod 777 game.

Can I see your compose file?

@Fifthdread
Copy link
Author

On your Docker-Host you created the docker-compose.yml and the game directory. That directory needs full permissions. You can do that with chmod 777 game.

Can I see your compose file?

For mine it's

    volumes:
      - /config/palworld:/palworld

Which means /config/palworld is my bind mount for the container's /palworld directory

So I have to run chmod 777 /config/palworld in my case.

@TheRealSphyxia
Copy link

Unable to see server in community browser, also unable to connect via direct IP

(Port 8211 & 27015 are open and allowed)

image

@17ya
Copy link

17ya commented Jan 19, 2024

image

Is this expected behavior or am I doing something wrong here? Can't seem to connect or anything

I am also like this, unable to connect

@Fifthdread
Copy link
Author

I think we are all in the same boat right now. Also can't see in Community Browser or direct connect.

@wanjianghongfeng
Copy link

Is this expected behavior or am I doing something wrong here? Can't seem to connect or anything

same for me, looks like sth. error

@Gitqiubai
Copy link

Gitqiubai commented Jan 19, 2024

Unable to see server in community browser, also unable to connect via direct IP

I encountered a similar issue. In a Baidu Tieba post, a user mentioned that only users who have purchased the game are allowed to access and run the game community servers.
image

@Fifthdread
Copy link
Author

If that's true than steamcmd needs to be configured to authenticate via a steam account instead of anonymously. I hope this isn't the case.

@Turner59
Copy link

for me the server is working since I entered the command chmod 777 game. But only the direct connect works, I dont find the server in the server browser. I also entered a server password in the yaml file but I am able to connect to the server without a password.

@Doomgull
Copy link

for me the server is working since I entered the command chmod 777 game. But only the direct connect works, I dont find the server in the server browser. I also entered a server password in the yaml file but I am able to connect to the server without a password.

Per their documentation, that's intended (https://tech.palworldgame.com/dedicated-server-guide#qa):

Q, I've set up a dedicated server, but when I set a ServerPassword, I don't get prompted for a password when logging in via direct IP entry, and I can't log in.

A, We're aware of this issue and plan to address it in the next update. In the meantime, if you need to secure the server with a password, you can configure it as a community server. This will make it accessible from the in-game community server list, prompting you to enter a password upon entry.

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

image

Is this expected behavior or am I doing something wrong here? Can't seem to connect or anything

Im getting this S_API Fails too, seems to be normal i've tried the image for Unraid from an buddy called @ich777 and his does the same thing. The forum-post of him is helpful ( https://forums.unraid.net/topic/79530-support-ich777-gameserver-dockers/page/365/#comment-1355891 ) - There it says you cant use password for direct-connect, if you want that you need to "wait" until the master-server lists you, sometimes this can take longer then 5 minutes, other people also says they had to click multiple times "next 200 results" to get an update.

So no-password and direct-connect (its a known bug) or wait longer to be in the Community-List and you can use a password then.

@Fifthdread
Copy link
Author

Fifthdread commented Jan 19, 2024

Random but I wasn't able to connect to my dedicated server because Docker was assigning 8211 TCP instead of UDP. Changing to UDP fixed it.... Finally I'm connected to something!

@17ya
Copy link

17ya commented Jan 19, 2024

My UPD 8211 port is already open, but the IP still cannot access it

@adispen
Copy link

adispen commented Jan 19, 2024

image
Is this expected behavior or am I doing something wrong here? Can't seem to connect or anything

Im getting this S_API Fails too, seems to be normal i've tried the image for Unraid from an buddy called @ich777 and his does the same thing. The forum-post of him is helpful ( https://forums.unraid.net/topic/79530-support-ich777-gameserver-dockers/page/365/#comment-1355891 ) - There it says you cant use password for direct-connect, if you want that you need to "wait" until the master-server lists you, sometimes this can take longer then 5 minutes, other people also says they had to click multiple times "next 200 results" to get an update.

So no-password and direct-connect (its a known bug) or wait longer to be in the Community-List and you can use a password then.

looks like my server is in the community list now, but still doesn't require a password when trying to connect even with the flag set to true. At least I can connect now after @Fifthdread 's comment

@Lexiv
Copy link
Contributor

Lexiv commented Jan 19, 2024

AH got the error identified ... really weird though

Guys make sure you do chmod 777 game on your host, otherwhise the user inside Docker cant sometimes not write to that directory and does it in a temporary directory.

chmod 777 seems pretty radical.
chown -R 1000:1000 game/ should be enough since the user inside the container had a uid of 1000 and a gid of 1000

@TheRealSphyxia
Copy link

My UPD 8211 port is already open, but the IP still cannot access it

Also unable to connect still

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Its working for me guys, i just connected to my freshly installed server, no nohting before, just docker-compose.yml in the new version and an empty game directory.

image

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Pushing latest fixes now

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Everything is pushed, please go ahead and test it and give me feedback.

I cannot say enough how important it is to start FRESH, pull image fresh, make a new docker-compose.yml from the template and delete game and setup permissions via chmod or chown, whatever you like more.

@Gitqiubai
Copy link

Gitqiubai commented Jan 19, 2024

Applying a series of fixes, seems like the server might not like all the -args=123 params and does favor to set the config file.

udp fix is also included

I ran the community server using a configuration file. When I initially connected to it using the "ip:port" format, no password prompt appeared. However, when I clicked on the server in the recently accessed server list, a password input box popped up.
image

After entering the password, I was able to successfully enter the game. I suspect this is a design issue with the game's interaction. Additionally, I added the parameter

./PalServer.sh EpicApp=PalServer port="$GAME_PORT" players="$MAX_PLAYERS" "$START_OPTIONS" -servername="$SERVER_NAME"

to the startup script to launch the server as a community server.
image

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Applying a series of fixes, seems like the server might not like all the -args=123 params and does favor to set the config file.
udp fix is also included

I ran the community server using a configuration file. When I initially connected to it using the "ip:port" format, no password prompt appeared. However, when I clicked on the server in the recently accessed server list, a password input box popped up. image

After entering the password, I was able to successfully enter the game. I suspect this is a design issue with the game's interaction. Additionally, I added the parameter

./PalServer.sh EpicApp=PalServer port="$GAME_PORT" players="$MAX_PLAYERS" "$START_OPTIONS" -servername="$SERVER_NAME"

to the startup script to launch the server as a community server. image

Yes, as described in the FAQ its a known bug. Either option-1 direct-connect and no-password OR
option-2 password and set to Community-Server, wait it finally listing and then join via the server-password.

@MalTeeez
Copy link

Works for me now as well, only thing that I noticed was sh: 1: xdg-user-dir: not found before [S_API] SteamAPI_Init(): Loaded local 'steamclient.so' OK., but that didn't stop the server from starting. Now on to password fix.

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Works for me now as well, only thing that I noticed was sh: 1: xdg-user-dir: not found before [S_API] SteamAPI_Init(): Loaded local 'steamclient.so' OK., but that didn't stop the server from starting. Now on to password fix.

steamclient-so and the S_API Warnings/Error seem to be normal, almost every other game based on that offically recommended SteamCMD-Base-Image seem to have the same problems.

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

AH got the error identified ... really weird though
Guys make sure you do chmod 777 game on your host, otherwhise the user inside Docker cant sometimes not write to that directory and does it in a temporary directory.

chmod 777 seems pretty radical. chown -R 1000:1000 game/ should be enough since the user inside the container had a uid of 1000 and a gid of 1000

Added this, thanks for the feedback @Lexiv - See a783959

@Toetje585
Copy link

Huh wait?

Adding chmod or anything should not be needed, most likely you builded the image but forgot to apply default permissions on the servermanager.sh

Did you do chmod +x servermanager.sh before building the image?

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Huh, what do you mean?
Im not talking about +x for Shell-Scripts.
Im talking about that game directory on the host system and depending on the OS and User this can have effects.

@jammsen
Copy link
Owner

jammsen commented Jan 19, 2024

Also please if like my work, please consider to give me a Star on Docker Hub and here an Github please, that would mean so much to me

  1. https://hub.docker.com/r/jammsen/palworld-dedicated-server
  2. https://github.com/jammsen/docker-palworld-dedicated-server

@jammsen jammsen changed the title Unable to start container process: exec: "/servermanager.sh": permission denied Unable to start container process: exec: "/servermanager.sh": permission denied - Day 1 Release Bug-Fixes - Community-Thread Jan 20, 2024
@jammsen
Copy link
Owner

jammsen commented Jan 20, 2024

I renamed this isse to "Unable to start container process: exec: "/servermanager.sh": permission denied - Day 1 Release Bug-Fixes - Community-Thread " - Hope thats okay with okay @Fifthdread .

I will closed this, as so many bugs yesterday were found and solved. Feel free to create a new issue if you find something else you need help with.

Thanks a lot for your input, hardwork and dedication!

@jammsen jammsen closed this as completed Jan 20, 2024
@jammsen jammsen self-assigned this Jan 20, 2024
@jammsen jammsen added bug Something isn't working enhancement New feature or request help wanted Extra attention is needed question Further information is requested labels Jan 20, 2024
@jammsen jammsen pinned this issue Jan 20, 2024
@MattzFiber
Copy link

Came here to say that the root complaint here still seems unfixed on a fresh install (I arrived here today, hi!)
So running chown -R 1000:1000 game/ is still needed to get it working on a vanilla install.

jammsen pushed a commit that referenced this issue Jan 23, 2024
@xiaoshaoxiaoshao
Copy link

如果你在 chown 以后仍然 permission denied
可以尝试 清除一下docker-compose的缓存
类似:
docker-compose build --no-cache
然后再
docker-compose up

jammsen pushed a commit that referenced this issue Jan 25, 2024
@kaysan13
Copy link

Hello

When I try to build with the dockerfile I have this error

Step 7/15 : ADD --chown=steam:steam --chmod=755 servermanager.sh /servermanager.sh the --chmod option requires BuildKit. Refer to https://docs.docker.com/go/buildkit/ to learn how to build images with BuildKit enabled ERROR: Service 'palworld-' failed to build : Build failed

When I change in the Dokerfile
ADD --chown=steam:steam --chmod=755 servermanager.sh /servermanager.sh
ADD --chown=steam:steam --chmod=755 backupmanager.sh /backupmanager.sh

To
COPY servermanager.sh /servermanager.sh
COPY backupmanager.sh /backupmanager.sh
RUN chmod +x /servermanager.sh
RUN chmod +x /backupmanager.sh

I have
Successfully built 4bc6541ad67f Successfully tagged jammsen/palworld-dedicated-server:latest Starting palworld- ... done Attaching to palworld- palworld- | >>> Checking for existence of default credentials palworld- | >>> Doing an update of the gameserver palworld- | time="2024-01-26T17:13:23+01:00" level=info msg="read crontab: cronlist" palworld- | tid(18) burning pthread_key_t == 0 so we never use it palworld- | Redirecting stderr to '/home/steam/Steam/logs/stderr.txt' palworld- | Logging directory: '/home/steam/Steam/logs' palworld- | [ 0%] Checking for available updates... palworld- | [----] Verifying installation... palworld- | Steam Console Client (c) Valve Corporation - version 1705108307 palworld- | -- type 'quit' to exit -- palworld- | Loading Steam API...OK palworld- | palworld- | Connecting anonymously to Steam Public...OK palworld- | Waiting for client config...OK palworld- | Waiting for user info...OK palworld- | Update state (0x5) verifying install, progress: 0.23 (5242880 / 2248053389) palworld- | Update state (0x5) verifying install, progress: 27.24 (612343497 / 2248053389) palworld- | Update state (0x5) verifying install, progress: 76.82 (1727036406 / 2248053389) palworld- | Success! App '2394010' fully installed. palworld- | >>> Starting the gameserver palworld- | >>> Setting up Engine.ini ... palworld- | Found [/Script/OnlineSubsystemUtils.IpNetDriver] section palworld- | Found NetServerMaxTickRate parameter, chaning it to 120 palworld- | >>> Finished setting up Engine.ini ... palworld- | >>> Setting up PalWorldSettings.ini ... palworld- | Checking if config exists palworld- | Setting max-players to 32 palworld- | Setting server name to palworld-###RANDOM###-project-###RANDOM### palworld- | Found standard template, using random numbers in server name palworld- | Server name is now jammsen-docker-generated-12005 palworld- | Setting server description to Palworld-###RANDOM###-Server palworld- | Setting server admin password to palworld- | Setting server password to palworld- | Setting public port to 8211 palworld- | Setting public ip to palworld- | Setting rcon-enabled to false palworld- | Setting RCONPort to 25575 palworld- | Setting Region to France palworld- | Setting bUseAuth to true palworld- | Setting BanListURL to https://api.palworldgame.com/api/banlist.txt palworld- | >>> Finished setting up PalWorldSettings.ini ... palworld- | Shutdown handler: initalize. palworld- | - Existing per-process limit (soft=, hard=) is enough for us (need only ) palworld- | Increasing per-process limit of core file size to infinity. palworld- | - Existing per-process limit (soft=, hard=) is enough for us (need only ) palworld- | [S_API] SteamAPI_Init(): Loaded local 'steamclient.so' OK. palworld- | CAppInfoCacheReadFromDiskThread took 6 milliseconds to initialize palworld- | Setting breakpad minidump AppID = 2394010 palworld- | [S_API FAIL] Tried to access Steam interface SteamUser021 before SteamAPI_Init succeeded. palworld- | [S_API FAIL] Tried to access Steam interface SteamFriends017 before SteamAPI_Init succeeded. palworld- | [S_API FAIL] Tried to access Steam interface STEAMAPPS_INTERFACE_VERSION008 before SteamAPI_Init succed
`

@jammsen
Copy link
Owner

jammsen commented Jan 27, 2024

Hey @kaysan13 if you need help create a new issue, DONT necro old posts, none of the previous people here have agreed to that!

Repository owner locked as resolved and limited conversation to collaborators Jan 27, 2024
@jammsen jammsen unpinned this issue Feb 9, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working enhancement New feature or request help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests