[Support] ich777 - Gameserver Dockers


Recommended Posts

On 11/26/2020 at 3:58 PM, Nelinski said:

Docker runs fine for me, I've actually got two running simultaneously and they're both fine. I also get that warning in my logs but the docker works fine even with that warning:


0030:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (00000000010CF4E0 1 C) semi-stub

I had the exact same behaviour until I correctly port forwarded. I could see my lobby but couldn't connect to it:

How many cores have you assigned to the ACC Server docker? If you left it all night and it finally got past that point, it sounds like you haven't got much power and it's taking a while to run. I had to assign more cores to the docker as mine all default to 1 core. Post a screenshot of your docker edit page (advanced mode) and share your ACC config files here and I'll double check them @hackspy679

your time is appreciated  

"How many cores have you assigned to the ACC Server docker?" ----- ALL - 8 CPU and 8 Threads.  

"haven't got much power and it's taking a while to run." ------ AMD Ryzen 7 3800x 32 GB RAM

cpu pinning.jpg

Docker Adv View.jpg

sc of log.jpg

NAT Rules.jpg

assistRules.json configuration.json event.json eventRules.json settings.json server.log

Link to comment
2 minutes ago, hackspy679 said:

"How many cores have you assigned to the ACC Server docker?"

I would recommend you to not pin any cores if you want to use all cores...

 

5 minutes ago, hackspy679 said:

NAT Rules.jpg

What are these other two entries? 9232 and 9231?

You can also forward TCP and UDP at once in pfsense instead of making two different forwardings...

Link to comment

"Nelinski said: How many cores have you assigned to the ACC Server docker? If you left it all night and it finally got past that point, it sounds like you haven't got much power and it's taking a while to run. I had to assign more cores to the docker as mine all default to 1 core."  

3 hours ago, ich777 said:

I would recommend you to not pin any cores if you want to use all cores...

That was my initial setting (no pinning) before I posted my issue but Nelinski advised assigning the cores, unless I did it incorrectly.  

9232 and 9231 are working ports in the win 10 server version I am running and since i was not getting tcp communication on the unraid I added those in too.  

I was thinking that about the tcp and udp together rule.  ty 

I fear the fatigue factor for assistance in this issue may be forthcoming.  I realize you all do this as good will and I dont want to take advantage of it.  :( My hope was to run two or three servers on one single platform in unraid for ACC instead of 3 seperate windows 10 based servers.  Just for reference I do perform massive amounts of google searches before posting here but it may be time to abandon this and move on and I'll understand if you all are at that point.  I just cant seem to figure out where I'M wrong at in this deployment.    Its frustrating that the Dang windows servers work (way less complicated I know) and I got the unraid Quake live server to work but this one escapes me.  ty  

Edited by hackspy679
Link to comment

Hi, 
I'm using your Minecraft Basic Server with Spigot and everything is working well, albeit with a fairly steep learning curve.

Is there a way to enable or script a WebUI for console access? Starting a screen session each time is fine for right now (all I have to do is <<up arrow>> to recall the command), but I know in two months, I'm going to lose the syntax. It would be much easier to bookmark a [server:port] address for maintenance. I'm just running this for my kids and their friends, so I'm not very deep into doing everything from the command line as it is, and every little bit helps. The Binhex Minecraft docker had scripting for WebUI access, but getting Spigot to work with that was more difficult to achieve. I like your version much better.
Thank you so much for all your dedication to these projects!

Erik

Link to comment
2 hours ago, ainuke said:

Hi, 
I'm using your Minecraft Basic Server with Spigot and everything is working well, albeit with a fairly steep learning curve.

Is there a way to enable or script a WebUI for console access? Starting a screen session each time is fine for right now (all I have to do is <<up arrow>> to recall the command), but I know in two months, I'm going to lose the syntax. It would be much easier to bookmark a [server:port] address for maintenance. I'm just running this for my kids and their friends, so I'm not very deep into doing everything from the command line as it is, and every little bit helps. The Binhex Minecraft docker had scripting for WebUI access, but getting Spigot to work with that was more difficult to achieve. I like your version much better.
Thank you so much for all your dedication to these projects!

Erik

Actually, I've found a Spigot plugin that provides the webui I'm looking for. Consider me solved.

  • Like 1
Link to comment
9 hours ago, ainuke said:

Actually, I've found a Spigot plugin that provides the webui I'm looking for. Consider me solved.

Sorry for the late answer but I got no notification that you've posted in this thread.

 

Glad to hear that everything works now.

May I ask which plugin that you use, only to share it with others?

Link to comment
9 hours ago, ich777 said:

Sorry for the late answer but I got no notification that you've posted in this thread.

 

Glad to hear that everything works now.

May I ask which plugin that you use, only to share it with others?

HaHa, I wouldn't call posting a reply 10 hours later on a free public support forum "late." I get longer lags on responses from companies I pay thousands of dollars a year to who have staff specifically  for resolving (paid) customer issues. You, sir, are golden!

 

Anyway, I neglected to post the plugin I found because it was such an obvious solution. I had tried other WebUI plugins, including the most prominent one on SpigotMC, but found it didn't work on Linux-based servers, only Windows. And then there was a whole list of others (which might have been GUI plugins, now that I think about it; I've been swimming in hyperlinks over the past week, trying to learn this whole new "realm" of MC server hosting) that turned up nothing that worked well. 

JPanel did the trick, and it's pretty slick for what it is. Console screen via [ip:port], CPU and RAM usage in real-time, a tab for current players (with kick/ban buttons), and a file browser that allows uploads into the MC container. This last feature really streamlines adding plugins or editing config files without having to pull up Krusader. Before this, in order to install a plugin, I'd have to transfer its .jar file to a share on unraid, then use Krusader (navigating to the two relevant panes to copy into the MC container) to get it into the minecraft/plugins folder. Direct upload from my PC without using Krusader not only streamlines things now, I'll make it easier in a month when I've forgotten all the steps I've learned now. 

There's also apps for Windows and Android (reportedly), if using a web browser isn't wanted. I installed the Win10 client, but haven't been able to log in with it, though. Not sure what the issue is, but at this point I've spent enough time on it I'm ready to move on...

 

Sorry for the wall of text and thanks for the awesome container! Spigot compatibility has gotten me exactly what I needed from a MineCraft server: a central world that my kids and their friends can login to that I can have branching worlds out of via Multiverse. It saves me from having 25 running MC containers and figuring out all the port forwarding/mapping logistics to keep remote access available. Also the simplicity of having ingame portals that take them to their respective worlds (with granular permissions) without having to explain that they need to disconnect from one world and connect to another.

 

Next step, figure out how to do all of this with Bedrock Minecraft...

Link to comment
3 minutes ago, ainuke said:

Next step, figure out how to do all of this with Bedrock Minecraft...

Thanks for the detailed answer. ;)

Also a plugin you can try is Dynmap if you haven't have it already. Really nice little google maps style map of your worlds accessable from your browser. :)

 

If you figure this out for bedrock feel free to contact me, haven't got the time to look into this if there are plugins or things like that are available...

Link to comment
1 hour ago, ich777 said:

If you figure this out for bedrock feel free to contact me, haven't got the time to look into this if there are plugins or things like that are available...

will do. 
There's a whole nukkit plugin framework that I think functions similarly to Bukkit/Spigot, but getting a Java server up and running has been paramount so far, given that the platform is more mature. There's a server distro out there that I stumbled across (on youtube, IIRC) that works as an emulator so that people running Bedrock/PocketEd can play on Java servers. It looked interesting, but I haven't done anything with it other than watch the video.

 

Bedrock seems to be multiplayer-friendly enough that running a server just for my kids to play on may not be the route I take. Anyone can host a multiplayer session/world right from their iphone, or PC. If I wanted to get into hosting a paid server, that'd be different. As it stands, when the Java server is going full-tilt, my system RAM is pegged to about 75%; I may be looking to upgrade my hardware before Bedrock. 

All that said, I personally play MC in VR, which requires Windows/Bedrock. What's a fella to do?

 

Anyway, where can I donate? You're doing God's work here.

Erik

Link to comment
1 minute ago, ainuke said:

I may be looking to upgrade my hardware before Bedrock.

I also got a Bedrock Server running, it's way more optimized than java edition.

 

2 minutes ago, ainuke said:

Anyway, where can I donate?

In the first post or in the CA App at my Containers there is a button, any donation is appreciated. :)

  • Thanks 1
Link to comment

Hi There,

 

I'm pretty new and noob with this. I was able to get the server running and able to get people from outside to join my game.

On windows i'm able to edit the server settings using something like ark server manager software, and manually edit the file.

how do it edit it in unraid? I was able to find the gameserversettings.ini in appdata, but i'm not able to edit it. i'm accessing from my windows pc smb folder. it says something about permission issue.  or is there an easier way to do this? or some in game command.

i'm sorry, trying to learn more about all this. thank you so much for anyone able to help or point me to a guide that i can follow from start.
 

Link to comment
17 minutes ago, i1mran92 said:

how do it edit it in unraid? I was able to find the gameserversettings.ini in appdata, but i'm not able to edit it. i'm accessing from my windows pc smb folder. it says something about permission issue.  or is there an easier way to do this?

Restart the server and it should be editable if not you can use the App 'CA Config Editor' from the CA App to edit it.

Link to comment
On 12/1/2020 at 11:07 AM, ich777 said:

If you figure this out for bedrock feel free to contact me, haven't got the time to look into this if there are plugins or things like that are available...

OK, so I've been messing around with Bedrock and NukkitX (which is the Bukkit for Bedrock, as far as I can tell) to install an architecture that supports plugins.

Haven't had any luck using it with your Bedrock server container. NukkitX wants Java, which doesn't appear to be present in your container the way it wants it. (Sorry if I'm not using the proper terminology; I'm in waaaaaay over my head and undoubtedly doing everything wrong).

So I tried another Bedrock container (MinecraftPE) that has Nukkit already installed. Except the Bedrock version it's installing is out of date, and none of the clients will connect. I've got a thread open with the CA container author asking why it's not using the latest version, which the container looks like it should be pointing to. That's obviously not your problem; just telling you where I'm at.

Which brings me to a direct NukkitX docker, which they have a docker file and everything for; I just don't have any idea where to start to turn that into a docker that unraid will install. If you have it in you to turn this into a container that can be used with unraid, I'd be happy to explore the plugin possibilities.

 

Oh, and that Dynmap plugin you mentioned is awesome!!

 

Erik

Link to comment
2 hours ago, ainuke said:

Haven't had any luck using it with your Bedrock server container. NukkitX wants Java, which doesn't appear to be present in your container the way it wants it.

No, java isn't implemented in the Bedrock container since it don't needs Java, but I maybe could update it. :D

 

2 hours ago, ainuke said:

If you have it in you to turn this into a container that can be used with unraid, I'd be happy to explore the plugin possibilities.

Is this the 'how-to' install nukkit?

 

2 hours ago, ainuke said:

Oh, and that Dynmap plugin you mentioned is awesome!!

Yep, this is one of the best plugins so far that I've discovered... :D

Link to comment
11 hours ago, ich777 said:

Restart the server and it should be editable if not you can use the App 'CA Config Editor' from the CA App to edit it.

oh gosh! that solved it! pretty dumb i didnt do the simplest troubleshoot first.

 

btw, one more question.

is there a way to have the game serve settings be remote accessed? i previously had few friends managing it via a vm using ark server manager.

or is there a way i can implement ark server manager into this? i rather use a docker since it uses much less resources than a VM.

 

thank you!

  • Like 1
Link to comment
7 hours ago, i1mran92 said:

oh gosh! that solved it! pretty dumb i didnt do the simplest troubleshoot first.

No problem, the container fixes all permissions on every restart. :)

 

7 hours ago, i1mran92 said:

is there a way to have the game serve settings be remote accessed?

This is a real tricky question, you can setup Wireguard in Unraid and connect to it via SSH and then manage it (there are many other ways to connect to your server from 'outside').

I don't know much about managing it, I think the Ark Server Manager is only for Windows and will not work with Linux.

Eventually @Cyd can help, he is here the Ark expert. :)

Link to comment
21 minutes ago, ich777 said:

No problem, the container fixes all permissions on every restart. :)

 

This is a real tricky question, you can setup Wireguard in Unraid and connect to it via SSH and then manage it (there are many other ways to connect to your server from 'outside').

I don't know much about managing it, I think the Ark Server Manager is only for Windows and will not work with Linux.

Eventually @Cyd can help, he is here the Ark expert. :)

i already have wireguard running. but the idea giving the full access via wireguard is kinda sketchy haha.

 

@Cyd Any help would be  great. If not, there's nothing much i can do but to edit it manually myself whenever they request something.

 

thank you again! really appreciate it

  • Thanks 1
Link to comment
17 hours ago, ich777 said:

Is this the 'how-to' install nukkit?

I suppose it is, but it has the master.zip, which has dockerfile and docker-compose files in it, along with others. My assumption is that the contents are all that's needed to build a docker container; but I haven't gone far enough with building containers in unraid to know the difference. If unraid had a more in-depth avenue to install containers (such as a dockerfile or docker-compose), I'd take a shot; but all my searches on the forums say "duh, use CA. Why would you want anything different?". 

I may take a look at what's involved with building containers on my windows machine; I haven't banged my head against the wall enough this week, yet.

 

Erik

Link to comment
8 minutes ago, ainuke said:

such as a dockerfile or docker-compose

A dockerfile is to create a docker container itself and upload it to dockerhub, dockercompose was left out by default to not complicate things to much for the end user I think.

 

10 minutes ago, ainuke said:

Why would you want anything different?

You can use CA if someone created a Container for it you can download it through CA.

 

11 minutes ago, ainuke said:

I may take a look at what's involved with building containers on my windows machine; I haven't banged my head against the wall enough this week, yet.

I can build such a container if you want to but I'm really busy at the time and it have to wait a while...

Link to comment
9 hours ago, i1mran92 said:

i already have wireguard running. but the idea giving the full access via wireguard is kinda sketchy haha.

 

@Cyd Any help would be  great. If not, there's nothing much i can do but to edit it manually myself whenever they request something.

 

thank you again! really appreciate it

The reason a restart works is that the startup scripts set all of the permissions to 0666 on startup so you can modify them unti ShooterGameServer touches them and sets them back to 0600.

 

Unfortunately ShooterGameServer does not respect the UMASK set and writes all of its files with 0600 permissions (read/write for owner only). I have mitigated this problem by adding a inotifywatch to the container that i use to serve the DynamicConfig.ini that re-applys a 0666 permission to files in the "Saved" directory. It's a little ham fisted but i haven't figured out a better solution yet.

 

I am the only admin of the FSAarkstar cluster so i havent had to think about granting or securing outside access... let me noodle on that.

 

Most of the options require a server restart to take effect, except for the handful that can be managed via the DynamicConfig.ini, so any outside management would also need to have the authority to restart the server/docker container...

Link to comment

I love your Minecraft container. I have had a couple containers running for about a month now. I am running Paper on both containers but it seems paper is going to be cutting of Java 8 support and moving to the next LTS version of Java 11 (there is also Java 17 LTS coming Sep 2021 later). I was wondering if there was a container update or an easy(-ish) way to update the version of java in the container. I did notice you keep it within the "runtime" directory but I am unsure how one might update what is in there and have the container use the newer version by default.

 

Relevant info:

https://papermc.io/forums/t/java-11-mc-1-17-and-paper/5615

Link to comment
7 hours ago, GyroDragona said:

I am running Paper on both containers but it seems paper is going to be cutting of Java 8 support and moving to the next LTS version of Java 11

I don't know if it would break something if I upgrade it in general so that the container always pulls Java 11 (jDownloader would completely break if I do that - also uses this runtime).

But of course you could do this:

Download the version of java that you want to use for (Linux 64bit!)

Got to your Minecraft folder in your appdata directory and open the runtime folder and delte this folder: jre1.8.0_241

Extract the downloaded into the runtime folder

Go to your template, click on 'Show more settings' and change 'Runtime Name' from 'basicjre' to the exact folder name that lives in your runtime folder

 

The server should then use the new java version, below is an example but for jre1.8.0_241 just as an example.

Bildschirmfoto_2020-12-04_07-50-36.thumb.png.568d5440570b98147c6a85d4fb0af374.png

Link to comment
3 hours ago, ich777 said:

I don't know if it would break something if I upgrade it in general so that the container always pulls Java 11 (jDownloader would completely break if I do that - also uses this runtime).

But of course you could do this:

Download the version of java that you want to use for (Linux 64bit!)

Got to your Minecraft folder in your appdata directory and open the runtime folder and delte this folder: jre1.8.0_241

Extract the downloaded into the runtime folder

Go to your template, click on 'Show more settings' and change 'Runtime Name' from 'basicjre' to the exact folder name that lives in your runtime folder

 

The server should then use the new java version, below is an example but for jre1.8.0_241 just as an example.

Bildschirmfoto_2020-12-04_07-50-36.thumb.png.568d5440570b98147c6a85d4fb0af374.png

 

I went to https://www.oracle.com/java/technologies/javase-jdk11-downloads.html and got "Linux x64 Compressed Archive" droped into SSH and navigated to the runtime directory (where I put the downloaded file), ran "tar -xf ./jdk-11.0.9_linux-x64_bin.tar.gz" tried changing "Runtime Name" to "jdk-11.0.9". I did check that the ownership and permissions were correct after unpacking Java 11 and they look correct.

 

As soon as I change "Runtime Name" it breaks the server. Even if I change it back to "basicjre" It will refuse to fully boot anymore even when it is the only change that is made to a already working server. I can't seem to figure out why. I'm doing it with a fresh Docker setup.

 

logs.txt

latest.log

 

IMG_0065.PNG

 

The logs and screenshot are after I changed the setting back.

 

You should be able to replicate my problem by starting with a fresh docker from your docker install, have it boot fully at least once with default settings then do the steps I did to install Java 11. I left the original runtime in place so I could switch between them during testing. I could extract the archive (and not yet change "Runtime Name") and still have it work fine. As soon as I change it then it will no longer function even if I change it back.

Edited by GyroDragona
Link to comment
3 hours ago, GyroDragona said:

You should be able to replicate my problem by starting with a fresh docker from your docker install, have it boot fully at least once with default settings then do the steps I did to install Java 11. I left the original runtime in place so I could switch between them during testing. I could extract the archive (and not yet change "Runtime Name") and still have it work fine. As soon as I change it then it will no longer function even if I change it back.

I will test this out after the weekend if that's ok for you, weekends are family time for me.

Link to comment

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.