I have created a Linux server build but cannot seem to get it to run within PlayFab. I am getting StartServersFailed for the server state. The documentation isn't particularly clear on how to fill out the information in the Game Manager for Linux builds.
What should the Mount path be set to? I tried /data/Assets but assume that's wrong. I SSHed into the VM for the failed server and saw that there is a /mnt/DownloadedAssets folder that contains the server zip build I added. Do I then need to manually unzip the asset or do you do that?
Answer by Citrus Yan · Dec 29, 2020 at 05:36 AM
The mount path is something you need to specify on your own, it points to where those assets should be mounted within the container's file system. And, StartServersFailed indicates that your server hosted on PlayFab cannot run properly. Did you integrate your game server with our GSDK and locally debug it to verify its integration with the GSDK? We recommend that your go through these steps in the “Authoring a game server” section before uploading your server build to PlayFab: Basics of a PlayFab game server - PlayFab | Microsoft Docs
Thanks for the response. Ok, I will try a different mount path. Does that mean it gets moved from /mnt/DownloadedAssets to the mount path for us? Does it get unzipped too?
Our server is integrated via GSDK and worked as a Windows build when running on PlayFab. We made a Linux build version of the same thing and it worked fine on our Docker container locally. I was assuming that StartServersFailed was because the server didn't mount and run?
Yes, it will move the asset files to the mount path within the container's file system for you. And, based on my experience, it should get unzipped as well.
For the second question, yes, it's possible. May I know what's your "start-server" command? And, you can also try using ContainerRunCommand to start your server, I think this thread may help: How to use and test ContainerRunCommand on Linux container with Multiplayer Server 2.0? - Playfab Community
By the way, could you please share your build configuration for us to investigate? You can use GetBuild to get a detailed one.
Sure, here is the config: https://snippi.com/s/ql8pm5w
Answer by Joe Fender · 3 days ago
@Citrus Yan @Sarah Zhang heya - any update here? It's odd that it works locally but not on your servers.
@Joe Fender I created a tool that makes this process pretty simple and automatic for Linux containers, you just need to upload your assets, set the mount path (/data/Assets/) and set your start command (ex: /data/Assets/GameServer.x86_64) and then create the container and create a build. I've provided some examples in the Readme as well:
https://github.com/bphillips09/PFAdmin
There's also an example build.json file if you would rather use the CLI
https://github.com/bphillips09/PFAdmin/blob/master/build.json