Posted February 25, 20187 yr Hi everyone, I'm trying to run a forge server using docker, but it doesn't work. - I've used the forge installer on the path of the directory I'm working in. - "java -jar forge.jar" is working in the console. - I get this error message when I'm trying to run it with docker : Quote We appear to be missing one or more essential library files. You will need to add them to your server before FML and Forge will run successfully.java.lang.ClassNotFoundException: net.minecraft.launchwrapper.Launch at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:44) at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:31) - I think I've added all useful files in my Docker image, but it seems I'm wrong. This is my Dockerfile : FROM openjdk:8u131-jre-alpine MAINTAINER Baptiste Chocot USER root RUN mkdir /minecraft ADD forge-1.10.2-12.18.3.2185-universal.jar /minecraft RUN mkdir /minecraft/libraries ADD libraries/* /minecraft/libraries/ RUN mkdir /minecraft/mods ADD mods/* /minecraft/mods/ RUN mkdir /minecraft/resourcepacks ADD VERSION /minecraft RUN mkdir /minecraft/versions ADD versions/* /minecraft/versions/ RUN mkdir /minecraft/logs ADD logs/* /minecraft/logs/ ADD minecraft_server.1.10.2.jar /minecraft ADD installer.log /minecraft ADD init.sh /minecraft RUN ls -la minecraft/libraries RUN chmod +x /minecraft/init.sh EXPOSE 25565 CMD java -jar forge-1.10.2-12.18.3.2185-universal.jar - The ls -la libraries shows this, so I guess libraries are not the problem : Step 19/22 : RUN ls -la minecraft/libraries ---> Running in c51cf9f66828 total 100 drwxr-xr-x 25 root root 4096 Feb 25 15:49 . drwxr-xr-x 11 root root 4096 Feb 25 15:50 .. drwxr--r-- 3 root root 4096 Feb 18 19:40 OptiFine drwxr--r-- 5 root root 4096 Feb 18 19:38 apache drwxr--r-- 4 root root 4096 Feb 18 19:40 commons-codec drwxr--r-- 4 root root 4096 Feb 18 19:40 commons-io drwxr--r-- 3 root root 4096 Feb 18 19:40 commons-logging drwxr--r-- 4 root root 4096 Feb 18 19:38 google drwxr--r-- 3 root root 4096 Feb 18 19:38 ibm drwxr--r-- 5 root root 4096 Feb 18 19:38 java drwxr--r-- 3 root root 4096 Feb 18 19:40 jline drwxr--r-- 3 root root 4096 Feb 18 19:38 lwjgl drwxr--r-- 3 root root 4096 Feb 18 19:40 lzma drwxr--r-- 3 root root 4096 Feb 18 19:39 minecraft drwxr--r-- 5 root root 4096 Feb 18 19:39 minecraftforge drwxr--r-- 7 root root 4096 Feb 18 19:39 mojang drwxr--r-- 3 root root 4096 Feb 18 19:39 netty drwxr--r-- 3 root root 4096 Feb 18 19:40 oshi-core drwxr--r-- 3 root root 4096 Feb 18 19:38 ow2 drwxr--r-- 7 root root 4096 Feb 18 19:39 paulscode drwxr--r-- 10 root root 4096 Feb 18 19:38 scala-lang drwxr--r-- 4 root root 4096 Feb 18 19:38 sf drwxr--r-- 4 root root 4096 Feb 18 19:38 typesafe drwxr--r-- 3 root root 4096 Feb 18 19:38 unimi drwxr--r-- 3 root root 4096 Feb 18 19:40 vecmath If anyone know what I missed or did wrong, please help me. Edited February 25, 20187 yr by Sunser Dockerfile has been edited
February 25, 20187 yr Rather than add the files from your .minecraft folder it would be best to do it from a separate contained server instance created using the forge installer. Also, I'm not that familiar with Docker so I'm not sure if I'm missing anything but I don't see you changing to the minecraft dir before running the forge jar. Is there a chance that the forge jar is in the root of the image and not in the sub folder, hence not being able to find the library folder?
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.