[Support] binhex - MineOS-node


Recommended Posts

10 hours ago, dkerlee said:

Dang it. This is for a different Binhex docker, Minecraft Server

 

 

Looking forward to getting this going. Here's a little start.

To get to the docker specific commandline, go to unRaid webUI > Docker > binhex-mineos-node > "Console_"

 

The default version of java is still /usr/sbin/java, which is openjdk version "1.8.0_292"




sh-5.1# which java
/usr/sbin/java
sh-5.1# /usr/sbin/java -showversion
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)

 

The newer version of java DOES exist, like @binhex says, but it's not the default java.




sh-5.1# cd /usr/lib/jvm/java-16-openjdk/bin
sh-5.1# ./java -showversion
openjdk version "16.0.1" 2021-04-20
OpenJDK Runtime Environment (build 16.0.1+9-24)
OpenJDK 64-Bit Server VM (build 16.0.1+9-24, mixed mode, sharing)

 

So we need to to one of two things:

1. let the Docker/server know there's another version of java we want to run

or

2. change the default version to the new one.

Guys, i can certainly include a variable to allow you to define the default java version, and i NEARLY implemented this for mineos-node but ended up backing away from the change for the following reasons:-

 

1. mineos-node currently is built to run using java 8 - switching the default to anything else may result in unexpected behaviour of mineos-node (the app not the minecraft servers running) and/or crashes.

2. multiple minecraft servers with different java requirements - what if the user is running papermc (requires java 11), minecraft 1.16 (requires java 8), and minecraft 1.17 (requires java 16), what do you set the default to be and will this cause any issues for the other servers running?.

 

So with the above in mind i didn't implement it, and TBH i really expected mineos-node to allow you to define the version of java for each server, im assuming that this is NOT the case right?, oh and BTW crafty DOES allow you to define the version of java per server, so perhaps if this is a requirement you might consider switching, see Q1. for how to do this in crafty:- https://github.com/binhex/documentation/blob/master/docker/faq/crafty.md

 

EDIT - Looks like somebody wants exactly this, the ability to define the java version per server, +1 this issue if you care:- https://github.com/hexparrot/mineos-node/issues/396

  • Like 2
Link to comment

My temporary solution has been to just delete the existing symlink (pointing to java 1.8 by default)

rm /usr/sbin/java

and create the new symlink to newer included java binary

ls -s /usr/lib/jvm/java-11-openjdk/bin/java /usr/sbin/java

to point to the newer included java 11 instead.

I'm only running a single PaperMC server, but so far it works fine. This solution probably doesn't persist through reboots, so you'll likely need to redo it either if you reboot or update this container.

Link to comment

@binhex thank you for weighing in. I hadn't even considered that different servers OF COURSE need/require different versions of java. So, Crafty does it? Looks terrific, I'll give it a spin for my servers.

 

Would you, or someone comment on all these different flavors of minecraft dockers? Three right from Binhex?:

1. Crafty (unRaid forum thread)

2. Minecraftserver (unRaid forum thread)

3. Mineos-node (unRaid forum thread)

 

For me, I've been using Mineos node for the web user interface, and ability to run several servers at once on different ports. Took a bit of finagling to get Geyser working (friend on a Switch), but got it, and it's been aok. I don't like the built in backup system in Mineos-node, but solved that with another plugin drivebackupV2.

  • Like 1
Link to comment
6 hours ago, dkerlee said:

Would you, or someone comment on all these different flavors of minecraft dockers? Three right from Binhex?:

1. Crafty (unRaid forum thread)

2. Minecraftserver (unRaid forum thread)

3. Mineos-node (unRaid forum thread)

 

sure:-

1. multi server capable, reasonably modern ui, no ability to directly down jar's so you have to download them yourself, in my short experience its been very stable, can define java version per server through web ui.

2. single server only, no web ui but does have console access via web console, includes current latest version of minecraft java and does allow you to run custom jar's, very stable no issues that im aware of, can define java version via env var (sets default).

3. mutli server capable, reasonably modern ui although a little dated looking now, can download jar's directly through the web ui but can lead to crashes, stability IMHO is not the best here, i think once its running its fine, no ability to define java version per server.

 

so it depends what you wanna do really as to what solution you go for, personally i run bedrock (binhex-minecraftbedrockserver).

  • Like 1
Link to comment

I run crafty with the geyser and floodgate plugins so java and bedrock users can play together- offsite bedrock users (eg xbox) can run phantom on a pi or laptop and join my server (that's what floodgate allows).

 

Got fed up with mineos crashing.

Crafty v3 doesnt have one button restore to a point in time or rdiff backup, only complete archive backups.

V4 will solve this later this year.

Their discord channel are fantastic for support too!

Crafty allows backups to be somewhere outside of appdata, eg on a dedicated share on the array. Much better!

  • Like 1
Link to comment
21 minutes ago, jj_uk said:

I run crafty with the geyser and floodgate plugins so java and bedrock users can play together- offsite bedrock users (eg xbox) can run phantom on a pi or laptop and join my server (that's what floodgate allows).

thats really interesting!, i didnt know about either of these apps, what is the translation like for bedrock clients, have you seen any issues?

Link to comment

hi guys, so for now i have included the ability to define the default java version, its no ideal (see this post for details:- https://forums.unraid.net/topic/92533-support-binhex-mineos-node/?do=findComment&comment=1003950) but it's better than nothing and at least gives you the ability to get things running, albeit with the same version for all servers.

 

so i have pushed a new image, please create the new variable with the key name of 'JAVA_VERSION' and the value being 8, 11, or 16, see Q8 from the following link if you are unsure how to create a variable for a container:- https://github.com/binhex/documentation/blob/master/docker/faq/unraid.md

 

Link to comment
9 hours ago, binhex said:

hi guys, so for now i have included the ability to define the default java version, its no ideal (see this post for details:- https://forums.unraid.net/topic/92533-support-binhex-mineos-node/?do=findComment&comment=1003950) but it's better than nothing and at least gives you the ability to get things running, albeit with the same version for all servers.

 

so i have pushed a new image, please create the new variable with the key name of 'JAVA_VERSION' and the value being 8, 11, or 16, see Q8 from the following link if you are unsure how to create a variable for a container:- https://github.com/binhex/documentation/blob/master/docker/faq/unraid.md

 

I've followed your instructions, and have made the variable, named it JAVA_VERSION, etc. without a hitch. In addition, the new server I made to test 1.17 has the correct JARs, enough memory allocated to it, and so on. However, when I try to launch the server, it either
• Doesn't launch

• Launches for about 10 seconds and then stops, leaving no record in the log
I'm running the next-to-latest image of the docker (the latest being the one you pushed out a few hours ago), but there's no option for me to update it. Should I reinstall the docker, or is there another solution?

Link to comment
10 hours ago, AlphaOmegaKappa said:

I'm running the next-to-latest image of the docker

this is the issue, the variable wont do anything until updated, to update go to unraid web ui/docker tab, click on 'advanced view' toggle to turn on and then click on 'force update' link for the container.

  • Thanks 1
Link to comment
On 6/10/2021 at 6:32 AM, binhex said:

hi guys, so for now i have included the ability to define the default java version, its no ideal (see this post for details:- https://forums.unraid.net/topic/92533-support-binhex-mineos-node/?do=findComment&comment=1003950) but it's better than nothing and at least gives you the ability to get things running, albeit with the same version for all servers.

 

so i have pushed a new image, please create the new variable with the key name of 'JAVA_VERSION' and the value being 8, 11, or 16, see Q8 from the following link if you are unsure how to create a variable for a container:- https://github.com/binhex/documentation/blob/master/docker/faq/unraid.md

 

This finally works for me and I don't even have to turn on privileged!!

  • Like 1
Link to comment

I was successfully able to specify Java version per server by following instructions from fegkay15 here:

https://github.com/hexparrot/mineos-node/issues/396#issuecomment-859964111

 

Basically, edit the "server.config" file for each server, and add a line right under the [java] heading:

java_binary=/usr/lib/jvm/java-16-openjdk/bin/java

Change 16 to 11 if needed. restart the minecraft server after saving file.

This is the location of the java binary for me. since this is for the mineos docker specifically (not the whole unraid server) and these were installed as part of an update to mineos docker, the location should be the same for everyone, though results may vary. 

  • Like 3
Link to comment

The above worked like a charm, thanks!

6 hours ago, CmdrKeen said:

I was successfully able to specify Java version per server by following instructions from fegkay15 here:

https://github.com/hexparrot/mineos-node/issues/396#issuecomment-859964111

 

Basically, edit the "server.config" file for each server, and add a line right under the [java] heading:

java_binary=/usr/lib/jvm/java-16-openjdk/bin/java

Change 16 to 11 if needed. restart the minecraft server after saving file.

This is the location of the java binary for me. since this is for the mineos docker specifically (not the whole unraid server) and these were installed as part of an update to mineos docker, the location should be the same for everyone, though results may vary. 

this worked like a charm, Thanks!

Link to comment
2021-06-18 11:36:36.708408 [info] Host is running unRAID
2021-06-18 11:36:36.725511 [info] System information Linux 186cd7257874 5.10.19-Unraid #1 SMP Sat Feb 27 08:00:30 PST 2021 x86_64 GNU/Linux
2021-06-18 11:36:36.745587 [info] OS_ARCH defined as 'x86-64'
2021-06-18 11:36:36.765944 [info] PUID defined as '0'
2021-06-18 11:36:36.848242 [info] PGID defined as '0'
2021-06-18 11:36:36.890949 [info] UMASK defined as '000'
2021-06-18 11:36:36.909325 [info] Permissions already set for '/config'
2021-06-18 11:36:36.933657 [info] Deleting files in /tmp (non recursive)...
2021-06-18 11:36:36.954013 [info] WEBUI_PASSWORD defined as 'mineos'
2021-06-18 11:36:36.988358 [info] JAVA_VERSION defined as '8'
'/usr/lib/jvm/java-8-openjdk/jre' is not a valid Java environment path

 

I have tried both the default of 8 and of 16 and both end up with the same error message. 
Is there additional set up I am missing here?

Link to comment
4 minutes ago, dbowerman said:

2021-06-18 11:36:36.708408 [info] Host is running unRAID
2021-06-18 11:36:36.725511 [info] System information Linux 186cd7257874 5.10.19-Unraid #1 SMP Sat Feb 27 08:00:30 PST 2021 x86_64 GNU/Linux
2021-06-18 11:36:36.745587 [info] OS_ARCH defined as 'x86-64'
2021-06-18 11:36:36.765944 [info] PUID defined as '0'
2021-06-18 11:36:36.848242 [info] PGID defined as '0'
2021-06-18 11:36:36.890949 [info] UMASK defined as '000'
2021-06-18 11:36:36.909325 [info] Permissions already set for '/config'
2021-06-18 11:36:36.933657 [info] Deleting files in /tmp (non recursive)...
2021-06-18 11:36:36.954013 [info] WEBUI_PASSWORD defined as 'mineos'
2021-06-18 11:36:36.988358 [info] JAVA_VERSION defined as '8'
'/usr/lib/jvm/java-8-openjdk/jre' is not a valid Java environment path

 

I have tried both the default of 8 and of 16 and both end up with the same error message. 
Is there additional set up I am missing here?

see the 'recommended post' at the top called 'glibc causing random errors'

  • Like 1
Link to comment

Hey guys

 

I am trying to setup a MC server my kids.  I got this docker installed and can log into the admin page ok.

The issue is when i create the server.  When i try to start it, i get a small pop up on the top left hand corner saying Cannot start server without a designated jar/phar.

 

I know MC has a server.jar file and runs from that.

 

I SSH into unraid, went to /mnt/user/appdata/binhex-mineos-node  and I can not see the .jar file.  

 

Do i have to manually upload the file?  If so where does it go exactly.

Link to comment

Hi All.

 

Anyone got a swag proxy-conf file to access the webUI from a sub domain?

 

tried a few that i have for other dockers but none seem to work

 

Don't worry sorted it

 

anyone know of a tutorial showing hoe to install the crossplay plugin Geyser?

 

dont worry sored this also.

Edited by enigma27
Link to comment

Hi @binhex.

 

got a weird issue and cant seem to work out what's happening so hoping someone can give me some insight.

 

I have two servers running that I leave up all the time. The last few mornings I have woken to find the actual docker unresponsive and I am unable to access the webUI. restarting the docker container seems to sort the issue. looking at the logs for the docker I see the following happens around 4am each morning.

 

2021-06-24 04:00:04,672 WARN received SIGTERM indicating exit request
2021-06-24 04:00:04,673 DEBG killing start-script (pid 75) with signal SIGTERM
2021-06-24 04:00:04,673 INFO waiting for shutdown-script, start-script to die
2021-06-24 04:00:05,674 DEBG fd 11 closed, stopped monitoring <POutputDispatcher at 22811341001200 for <Subprocess at 22811341389584 with name start-script in state STOPPING> (stdout)>
2021-06-24 04:00:05,674 DEBG fd 15 closed, stopped monitoring <POutputDispatcher at 22811341051840 for <Subprocess at 22811341389584 with name start-script in state STOPPING> (stderr)>
2021-06-24 04:00:05,674 INFO stopped: start-script (terminated by SIGTERM)
2021-06-24 04:00:05,674 DEBG received SIGCHLD indicating a child quit
2021-06-24 04:00:05,675 DEBG killing shutdown-script (pid 74) with signal SIGTERM
2021-06-24 04:00:05,676 DEBG 'shutdown-script' stdout output:
[info] Initialising shutdown of process(es) '^mineos' ...

2021-06-24 04:00:06,677 DEBG fd 8 closed, stopped monitoring <POutputDispatcher at 22811341389488 for <Subprocess at 22811341385984 with name shutdown-script in state STOPPING> (stdout)>
2021-06-24 04:00:06,677 DEBG fd 10 closed, stopped monitoring <POutputDispatcher at 22811341385792 for <Subprocess at 22811341385984 with name shutdown-script in state STOPPING> (stderr)>
2021-06-24 04:00:06,677 INFO stopped: shutdown-script (exit status 0)
2021-06-24 04:00:06,677 DEBG received SIGCHLD indicating a child quit
Created by...
___. .__ .__
\_ |__ |__| ____ | |__ ____ ___ ___
| __ \| |/ \| | \_/ __ \\ \/ /
| \_\ \ | | \ Y \ ___/ > <
|___ /__|___| /___| /\___ >__/\_ \
\/ \/ \/ \/ \/
https://hub.docker.com/u/binhex/

2021-06-24 04:03:46.880040 [info] Host is running unRAID
2021-06-24 04:03:46.918733 [info] System information Linux 975ded9594a1 5.10.28-Unraid #1 SMP Wed Apr 7 08:23:18 PDT 2021 x86_64 GNU/Linux
2021-06-24 04:03:46.969616 [info] OS_ARCH defined as 'x86-64'
2021-06-24 04:03:47.019571 [info] PUID defined as '0'
2021-06-24 04:03:47.086145 [info] PGID defined as '0'
2021-06-24 04:03:47.168529 [info] UMASK defined as '000'
2021-06-24 04:03:47.206732 [info] Permissions already set for '/config'
2021-06-24 04:03:47.265553 [info] Deleting files in /tmp (non recursive)...
2021-06-24 04:03:47.318753 [info] WEBUI_PASSWORD defined as 'xxxxxxxxxxxxxx'
2021-06-24 04:03:47.400914 [info] JAVA_VERSION defined as '16'
2021-06-24 04:03:47.481562 [info] Starting Supervisor...
2021-06-24 04:03:48,039 INFO Included extra file "/etc/supervisor/conf.d/mineos-node.conf" during parsing
2021-06-24 04:03:48,039 INFO Set uid to user 0 succeeded
2021-06-24 04:03:48,046 INFO supervisord started with pid 9
2021-06-24 04:03:49,048 INFO spawned: 'shutdown-script' with pid 76
2021-06-24 04:03:49,050 INFO spawned: 'start-script' with pid 77
2021-06-24 04:03:49,051 INFO reaped unknown pid 10 (exit status 0)
2021-06-24 04:03:49,102 DEBG 'start-script' stdout output:
[info] Starting MineOS-node...

2021-06-24 04:03:49,102 INFO success: shutdown-script entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2021-06-24 04:03:49,102 INFO success: start-script entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2021-06-24 04:03:49,340 DEBG 'start-script' stdout output:
mineos daemon already running. PID: 86

2021-06-24 04:03:49,343 DEBG 'start-script' stdout output:
[info] MineOS-node started

 

something seems to be trying to shut the image down but I cant work out what.

 

None of my other docker images shut down and I have no scripts within Unraid either that asks for docker to be shut down.

 

any idea what maybe causing it?

Edited by enigma27
Link to comment

A user named fegkay15 on github noticed that you can set a specific java path by adding "java_binary=[path]" to the server.config file of your server. A simple enough solution if you're stubborn like me and don't want to migrate your existing servers over to crafty. For specifying to java 16 in mineos specifically, add "java_binary=/usr/lib/jvm/java-16-openjdk/bin/java" under the "[java]" section in your server.config file.

 

https://github.com/hexparrot/mineos-node/issues/396#issuecomment-859964111

  • Like 1
Link to comment
  • 2 weeks later...
On 6/19/2021 at 7:20 PM, enigma27 said:

anyone know of a tutorial showing hoe to install the crossplay plugin Geyser?

 

dont worry sored this also.

 

Just curious how you accomplished this if you wouldn't mind sharing please?  Was hoping to allow Bedrock players to access my Java server.

Link to comment
On 7/6/2021 at 1:26 PM, Johnny Utah said:

 

Just curious how you accomplished this if you wouldn't mind sharing please?  Was hoping to allow Bedrock players to access my Java server.

Hi Johnny

 

So don't think it was straight forward and should have probably wrote it down but from memory I did the following

 

Downloaded Spigot from the website and uploaded the Jar to the server (Couldn't get it to download through mineos webui)

 

I then created a new server and made the jar file for the server the Spigot JAR i had uploaded. Once that was up and running I downloaded the required plugin Geyser-spigot version and added that to the plugin folder within the server folder. i then followed the instructions in the config file that came with Geyser to what i needed it to be and booted up the server and it just seemed to work.

  • Like 1
Link to comment
  • 2 weeks later...

I'm having an issue where none of the profiles are loading. I am not running pihole or pfsense.

I looked it up in the wiki and it said to update the webui but I'm unsure how to do that with a docker in unraid

https://minecraft.codeemo.com/mineoswiki/index.php?title=Updating_the_Webui

No Profiles Are Available; Check Internet Connectivity And Refresh The Profile List.

 

Edit:

For some reason, the profiles all loaded after I left mineos running for ~15 mins. 

Edited by TarrifMan
Link to comment

Just load the server manually. I would recommend letting the devs and maintainers get this figured out instead of running rm commands and setting up new pointers.

 

To load minecraft:

load your docker console for your minecraft server.

cd to /config/minecraft

then run:

/usr/lib/jvm/java-16-openjdk/bin/java -Xms1G -Xmx1G -jar ./minecraft_server.jar

 

you could always create a single line sh script as well.

 

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.