July 15, 20223 yr Hey @Goobaroo , awesome job on the containers, they're very easy to use! I have a suggestion regarding modpack versions that might make your life easier: you can call the modpacks.ch api and get the installer id with the version string. For example, I want to play version 1.14.0 of the OceanBlock modpack but i noticed the latest container targets 1.12.0 which is the latest stable. The launch.sh script could do something like curl -s https://api.modpacks.ch/public/modpack/91 | jq '.versions[] | select(.name=="1.14.0") | .id' Where both the modpack id (91 for OceanBlock) and the version (1.14.0 in this case) could be changed but the rest remains the same. That particular snippet prints out "2230" which is the id needed for the installer. Please let me know if you find this useful. Also: I'm new to unraid so this might be a stupid question, but is there a reason these packages cause me a lot more permission headaches than other ones? Again, thanks for these containers, very useful.
July 16, 20223 yr Author Hi @diogotr7, that is precisely what I'm doing when building the containers, using the APIs both through modpacks.ch and from Curseforge. While the FTB modpacks do come with that universal installer, there have been bugs that I've fixed on my end when installing the servers. You also have to take into account the Java version that the container is based on and that could change between modpack versions. 2 hours ago, diogotr7 said: Also: I'm new to unraid so this might be a stupid question, but is there a reason these packages cause me a lot more permission headaches than other ones? Again, thanks for these containers, very useful. I think I've found the issue with the permissions I'm in the process of republishing all the current versions of the modpacks to apply the fix. From my tests it now correctly writes out the files as nobody:users
July 16, 20223 yr Hello, i have updated to the new Docker and i get the following Error: 2022-07-16 12:58:04,141 main ERROR Unable to locate appender "DebugFile" for logger config "root" [12:58:04] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher running: args [--launchTarget, forgeserver, --fml.forgeVersion, 40.1.54, --fml.mcVersion, 1.18.2, --fml.forgeGroup, net.minecraftforge, --fml.mcpVersion, 20220404.173914] [12:58:04] [main/INFO] [cp.mo.mo.Launcher/MODLAUNCHER]: ModLauncher 9.1.3+9.1.3+main.9b69c82a starting: java version 17.0.2 by Oracle Corporation [12:58:05] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=union:/data/libraries/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar%2314!/ Service=ModLauncher Env=SERVER Exception in thread "main" com.electronwill.nightconfig.core.io.WritingException: An I/O error occured at MC-BOOTSTRAP/[email protected]/com.electronwill.nightconfig.core.io.ConfigWriter.write(ConfigWriter.java:90) at MC-BOOTSTRAP/[email protected]/com.electronwill.nightconfig.core.file.WriteSyncFileConfig.save(WriteSyncFileConfig.java:61) at MC-BOOTSTRAP/[email protected]/com.electronwill.nightconfig.core.file.AutoreloadFileConfig.save(AutoreloadFileConfig.java:36) at MC-BOOTSTRAP/[email protected]/com.electronwill.nightconfig.core.file.AutosaveCommentedFileConfig.save(AutosaveCommentedFileConfig.java:80) at MC-BOOTSTRAP/[email protected]/net.minecraftforge.fml.loading.FMLConfig.loadFrom(FMLConfig.java:56) at MC-BOOTSTRAP/[email protected]/net.minecraftforge.fml.loading.FMLConfig.load(FMLConfig.java:62) at MC-BOOTSTRAP/[email protected]/net.minecraftforge.fml.loading.FMLServiceProvider.initialize(FMLServiceProvider.java:65) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.TransformationServiceDecorator.onInitialize(TransformationServiceDecorator.java:68) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.TransformationServicesHandler.lambda$initialiseTransformationServices$7(TransformationServicesHandler.java:92) at java.base/java.util.HashMap$Values.forEach(HashMap.java:1065) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.TransformationServicesHandler.initialiseTransformationServices(TransformationServicesHandler.java:92) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.TransformationServicesHandler.initializeTransformationServices(TransformationServicesHandler.java:51) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.run(Launcher.java:87) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.Launcher.main(Launcher.java:77) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) at MC-BOOTSTRAP/[email protected]/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) at [email protected]/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:149) Caused by: java.nio.file.AccessDeniedException: /data/config/fml.toml at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:90) at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:218) at java.base/java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:484) at java.base/java.nio.file.Files.newOutputStream(Files.java:228) at MC-BOOTSTRAP/[email protected]/com.electronwill.nightconfig.core.io.ConfigWriter.write(ConfigWriter.java:87) ... 16 more + ./start.sh /launch.sh: line 45: ./start.sh: No such file or directory On the Filesystem the start.sh is missing, i think that is the issue. BR MVLP
July 16, 20223 yr every time i launch the server i get this error # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x0000152d7a598df1, pid=13, tid=62 it also creates an error log but it is a touch wordy so i don't know if it'll help. any assistance is appreciated! hs_err_pid13.log
July 16, 20223 yr Author @MVLP You upgraded docker itself? What container are you trying to run? @galdor709 Which server are you trying to launch? How much memory do you have, it looks like 32GB. You may be out of memory, that server is trying to allocate 4GB on startup.
July 16, 20223 yr 1 hour ago, Goobaroo said: @MVLP You upgraded docker itself? What container are you trying to run? Ah sorry, I updated the Direwolf20 Docker to the Latest Dockerimage.
July 16, 20223 yr Let me clarify my request: Do you think it would make sense to accept the modpack version as an environment variable? It would allow users to update to newer versions of each modpack without the need for you to do so manually. I'm playing a beta version of my modpack and since your containers seem to target latest stable, i can't play it without modifications. Could even make the user pick latest stable or beta when installing the app, and get the corresponding id with the script i mentioned. Sorry if it seems like i'm being annoying, just trying to make your life easier as a maintainer
July 17, 20223 yr Hey everyone, I update my server and now everytime I try to start it says this: Any solution? How can I go back in versions whitout lossing all (maps, etc)?
July 17, 20223 yr Author @MVLP In a console, change the ownership of the files in /mnt/user/appdata/ftbdirewolf20_118. chown -R nobody:users /mnt/user/appdata/ftbdirewolf20_118 @Z-Server I don't know which container you're running but try fixing the ownership like above, but the directory that is configured for which ever container you're running. Longer explanation. All the original containers were running the server inside using a user running under UID 1001. For anyone who created a new account on their unraid server this would have matched up with a user on the unraid host. Containers should be running as the nobody user (UID 99). So all the containers now map to the correct user on the unraid server when running in the containers. This is really only an issue when you have to write out persistent files like the Minecraft files. Edited July 17, 20223 yr by Goobaroo
July 24, 20223 yr On 7/17/2022 at 10:32 AM, Goobaroo said: @MVLP In a console, change the ownership of the files in /mnt/user/appdata/ftbdirewolf20_118. chown -R nobody:users /mnt/user/appdata/ftbdirewolf20_118 @Z-Server I don't know which container you're running but try fixing the ownership like above, but the directory that is configured for which ever container you're running. Longer explanation. All the original containers were running the server inside using a user running under UID 1001. For anyone who created a new account on their unraid server this would have matched up with a user on the unraid host. Containers should be running as the nobody user (UID 99). So all the containers now map to the correct user on the unraid server when running in the containers. This is really only an issue when you have to write out persistent files like the Minecraft files. Hey again @Goobaroo, I updated the OceanBlock Docker as it said it had an update. I'm assuming to take care of the user permissions you mentioned. I did the command (customized for the ftboceanblock folder) and I still get the below error in my logs when turning the docker on, then it shuts off. Any suggestions? + ID=91 + VER=2230 + cd /data + [[ true = \f\a\l\s\e ]] + echo eula=true + [[ -f serverinstall_91_2230 ]] + [[ -n FTB OceanBlock v1.14.0 Server Powered by Docker ]] + sed -i '/motd\s*=/ c motd=FTB OceanBlock v1.14.0 Server Powered by Docker' /data/server.properties + [[ -n world ]] + sed -i '/level-name\s*=/ c level-name=world' /data/server.properties + [[ -n Kalaup,aRand0mB0t ]] + echo Kalaup,aRand0mB0t + awk -v RS=, '{print}' + [[ -n '' ]] + sed -i 's/server-port.*/server-port=25565/g' server.properties + [[ -f run.sh ]] + [[ -f start.sh ]] + [[ -f run.sh ]] + [[ -f start.sh ]] ++ ls forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar + FORGE_JAR='forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar' + curl -Lo log4j2_112-116.xml https://launcher.mojang.com/v1/objects/02937d122c86ce73319ef9975b58896fc1b491d1/log4j2_112-116.xml % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1131 100 1131 0 0 13962 0 --:--:-- --:--:-- --:--:-- 13962 + java -server -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -Dfml.queryResult=confirm -Dlog4j.configurationFile=log4j2_112-116.xml -Xms6144m -Xmx9182m -jar forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar nogui + ID=91 + VER=2230 + cd /data + [[ true = \f\a\l\s\e ]] + echo eula=true + [[ -f serverinstall_91_2230 ]] + [[ -n FTB OceanBlock v1.14.0 Server Powered by Docker ]] + sed -i '/motd\s*=/ c motd=FTB OceanBlock v1.14.0 Server Powered by Docker' /data/server.properties + [[ -n world ]] + sed -i '/level-name\s*=/ c level-name=world' /data/server.properties + [[ -n Kalaup,aRand0mB0t ]] + echo Kalaup,aRand0mB0t + awk -v RS=, '{print}' + [[ -n '' ]] + sed -i 's/server-port.*/server-port=25565/g' server.properties + [[ -f run.sh ]] + [[ -f start.sh ]] + [[ -f run.sh ]] + [[ -f start.sh ]] ++ ls forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar + FORGE_JAR='forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar' + curl -Lo log4j2_112-116.xml https://launcher.mojang.com/v1/objects/02937d122c86ce73319ef9975b58896fc1b491d1/log4j2_112-116.xml % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1131 100 1131 0 0 14500 0 --:--:-- --:--:-- --:--:-- 14500 + java -server -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -Dfml.queryResult=confirm -Dlog4j.configurationFile=log4j2_112-116.xml -Xms6144m -Xmx9182m -jar forge-1.16.5-36.2.33-installer.jar forge-1.16.5-36.2.33.jar nogui JVM info: Oracle Corporation - 1.8.0_312 - 25.312-b07 java.net.preferIPv4Stack=true Found java version 1.8.0_312 Exception in thread "main" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204) at java.awt.Window.<init>(Window.java:536) at java.awt.Frame.<init>(Frame.java:420) at java.awt.Frame.<init>(Frame.java:385) at javax.swing.SwingUtilities$SharedOwnerFrame.<init>(SwingUtilities.java:1763) at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1838) at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1696) at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:863) at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:666) at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:637) at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:177) at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:147) JVM info: Oracle Corporation - 1.8.0_312 - 25.312-b07 java.net.preferIPv4Stack=true Found java version 1.8.0_312 Exception in thread "main" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204) at java.awt.Window.<init>(Window.java:536) at java.awt.Frame.<init>(Frame.java:420) at java.awt.Frame.<init>(Frame.java:385) at javax.swing.SwingUtilities$SharedOwnerFrame.<init>(SwingUtilities.java:1763) at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1838) at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1696) at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:863) at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:666) at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:637) at net.minecraftforge.installer.SimpleInstaller.launchGui(SimpleInstaller.java:177) at net.minecraftforge.installer.SimpleInstaller.main(SimpleInstaller.java:147)
August 1, 20223 yr Author @DarthLlama I'm looking into it, there is something funky happening with the FTB installer. I'm having similar issues on my end. I'll see if I can fix it.
August 2, 20223 yr 3 hours ago, Goobaroo said: @DarthLlama I'm looking into it, there is something funky happening with the FTB installer. I'm having similar issues on my end. I'll see if I can fix it. @GoobarooAwesome thanks so much! Any chance of maybe getting a Lapito's Galacticraft docker? Lol. My friend and I keep getting to endgame on these modpacks, and that's one we have wanted to try.
August 2, 20223 yr Brand new to unraid. I was successful at setting up the binhex minecraft container and my kids are enjoying playing in their own world. Now they would like the mod packs so I installed ATM7, but I don't know how to "connect" that to the minecraft container -- if that's even how it's stated. I do know that I can't have both of them running on the same port so is it a matter of copying the jar files from the ATM7 into the binhex minecraft installation or does it require something else like parameters or modifying the server.properties file? I'm new to unraid, linux, dockers, etc. but I'm a software developer so I can follow bread crumbs -- I just have yet to find anything definitive on youtube or on this forum/community that addresses this so I'm just guessing it's basic knowledge if you're into this stuff everyday. Sorry if it sounds like I have no clue, but I'm just trying to get to the next milestone of success so I can keep expanding on my knowledge of Unraid, dockers, vms, etc. Any help is very much appreciated!
August 3, 20223 yr Author @hoss Docker containers are fully contained with everything they need to run the application that they are meant to run. I don't know what support the binhex Minecraft container has, but you don't need it to install my ATM7 container. Once ATM7 is installed on your unraid server, you have two options. By default the ATM7 should be configured to run in bridge network mode and you can set a different port number using the PORT config item in the ATM7 container settings. Do not change the port in the server.properties. The Host port will be used by clients for connecting to the server. You can see in the screenshot that docker is forwarding the network traffic from the bridge docker network to the unraid server IP and the configured port. You can change the networking in the ATM7 container to use your br0 network. This should allow the container to acquire it's own IP address from your local network and you can connect on that. You can even set a static IP as part of the container configuration.
August 3, 20223 yr That was exactly what I needed and made complete sense. I went with option 1. It took a very long time to load all 300+ mod packs, but I think most of them went in without errors. I don't think it's necessary to chase down all the errors / warnings in the log. Do I need to restart one or both of the containers for the changes to take effect? Is there an order that they should be started? I'd think it would be the ATM7 started first then wait until the log is finished with loading all the mods then start the minecraft container.....but I don't know. And last question for now (sorry)....how can I tell if the mods are loaded while playing the game? And how do I buy you a beer or coffee?
August 3, 20223 yr Author Order doesn't matter because those are now two completely independent Minecraft server instances. One is the base vanilla Minecraft and the other is ATM7. Good little overview of a docker container here: https://www.docker.com/resources/what-container/ That 12345 port number can be pretty much anything you want in the range of 1024-65535. Modded Minecraft servers are pretty resource heavy. So depending on how powerful your Unraid server is, it will determine how many different instances you can run simultaneously.
August 3, 20223 yr OMG I can't believe I didn't realize the ATM7 was an actual minecraft server instance.....it makes sense now because we didn't see any changes to the inventory or how the world looks.....nothing really. I just thought maybe those mods had to be unlocked somehow and that was going to be another quest.....I'm glad you cleared that up! I'll have my kids give port 12345 a run and see how that goes. Again, really appreciate the help and all the work you put into this for the community. I'm finding that a lot of people on here really know their stuff and hope I can someday contribute.
August 5, 20223 yr Hi, downloaded your Pixelmon Docker, when i wanna install it, the Filesystem at my Unraidserver is empty, i accepted the EULA, any idea?
August 5, 20223 yr Author 2 hours ago, vGCaptainObvious said: Hi, downloaded your Pixelmon Docker, when i wanna install it, the Filesystem at my Unraidserver is empty, i accepted the EULA, any idea? Can you send the log?
August 5, 20223 yr 1 hour ago, Goobaroo said: Can you send the log? "Warning: Failed to create the file serverpack905.zip: Permission denied 0 43.7M 0 15944 0 0 29094 0 0:26:16 --:--:-- 0:26:16 29094 curl: (23) Failed writing body (0 != 15944) + [[ -d serverpack ]] + chmod u+x Install.sh chmod: cannot access 'Install.sh': No such file or directory + ./Install.sh /launch.sh: line 23: ./Install.sh: No such file or directory + [[ -n '' ]] + [[ -n Server ]] + sed -i 's/motd\s*=/ c motd= Server' /data/server.properties sed: -e expression #1, char 26: unterminated `s' command + [[ -n '' ]] + sed -i 's/server-port.*/server-port=25565/g' server.properties sed: can't read server.properties: No such file or directory + . ./settings.sh /launch.sh: line 38: ./settings.sh: No such file or directory + java -server -Xms2048m -Xmx4096m -jar nogui Error: Unable to access jarfile nogui"
August 5, 20223 yr Hi Goobaroo, I just updated the ATM 7 pack to the most recent docker version. Prior to this, everything was working and running great. When I updated, the docker fails to start and in the logs provides the error of "Error: could not open `libraries/net/minecraftforge/forge/1.18.2-40.1.68/unix_args.txt' When I went into the file location, I couldn't find this directory at all. Any suggestions?
August 5, 20223 yr 4 minutes ago, Deblobman said: When I went into the file location, I couldn't find this directory at all. Any suggestions? Are you looking in the container, or are you looking in Unraid? You can get a console inside the container by clicking its icon and selecting >_ Console
August 5, 20223 yr 3 minutes ago, trurl said: Are you looking in the container, or are you looking in Unraid? You can get a console inside the container by clicking its icon and selecting >_ Console Since it can't start in the docker, I can only open the log within Unraid itself. That's where I pulled that error code from. Edited August 5, 20223 yr by Deblobman
August 5, 20223 yr 17 minutes ago, Deblobman said: open the log within Unraid Is this the docker.log?
August 5, 20223 yr 3 minutes ago, trurl said: Is this the docker.log? Yes, It's the log I pulled from the docker in Unraid.
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.