Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ERROR failed to auto-install CurseForge modpack #1986

Closed
FabMaster2000 opened this issue Mar 3, 2023 · 16 comments
Closed

ERROR failed to auto-install CurseForge modpack #1986

FabMaster2000 opened this issue Mar 3, 2023 · 16 comments
Labels
status/stale No recently activity has been seen and will be closed soon.

Comments

@FabMaster2000
Copy link

FabMaster2000 commented Mar 3, 2023

Describe the problem

I want to create a SkyFactory 4 Server with the following command:

docker run -d -it -p 25565:25565 --name SkyFactory -e EULA=TRUE -e MEMORY=2G -e VIEW_DISTANCE=10 -e TYPE=AUTO_CURSEFORGE -e CF_PAGE_URL=https://www.curseforge.com/minecraft/modpacks/skyfactory-4/files/3565683 -e VERSION=1.12.2 itzg/minecraft-server

After some modpacks are successful downloaded the following error message occure:

[mc-image-helper] 14:10:58.887 WARN : [a13ebe68, L:/172.17.0.2:51750 - R:api.curse.tools/188.114.97.3:443] The connection observed an error
io.netty.handler.ssl.SslHandshakeTimeoutException: handshake timed out after 10000ms
at io.netty.handler.ssl.SslHandler$7.run(SslHandler.java:2115)
at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:153)
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:406)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
[mc-image-helper] 14:10:58.896 ERROR : 'install-curseforge' command failed. Version is 1.24.19
reactor.core.Exceptions$ReactiveException: io.netty.handler.ssl.SslHandshakeTimeoutException: handshake timed out after 10000ms
at reactor.core.Exceptions.propagate(Exceptions.java:408)
at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:97)
at reactor.core.publisher.Mono.block(Mono.java:1710)
at me.itzg.helpers.curseforge.CurseForgeInstaller.processModpackZip(CurseForgeInstaller.java:319)
at me.itzg.helpers.curseforge.CurseForgeInstaller.downloadAndProcessModpackZip(CurseForgeInstaller.java:271)
at me.itzg.helpers.curseforge.CurseForgeInstaller.processModPack(CurseForgeInstaller.java:185)
at me.itzg.helpers.curseforge.CurseForgeInstaller.install(CurseForgeInstaller.java:124)
at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:137)
at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:20)
at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
at picocli.CommandLine.access$1500(CommandLine.java:148)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
at picocli.CommandLine.execute(CommandLine.java:2170)
at me.itzg.helpers.McImageHelper.main(McImageHelper.java:121)
Suppressed: java.lang.Exception: #block terminated with an error
at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:99)
... 16 common frames omitted
Caused by: io.netty.handler.ssl.SslHandshakeTimeoutException: handshake timed out after 10000ms
at io.netty.handler.ssl.SslHandler$7.run(SslHandler.java:2115)
at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:153)
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:406)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Unknown Source)
[init] ERROR failed to auto-install CurseForge modpack

@itzg
Copy link
Owner

itzg commented Mar 3, 2023

Please re-pull the latest image and try that. The default SSL timeout is supposed to 20 seconds now.

@itzg
Copy link
Owner

itzg commented Mar 3, 2023

...and if it persists, you can set FETCH_TLS_HANDSHAKE_TIMEOUT to a longer duration like "PT40S"

@FabMaster2000
Copy link
Author

FabMaster2000 commented Mar 4, 2023

...and if it persists, you can set FETCH_TLS_HANDSHAKE_TIMEOUT to a longer duration like "PT40S"

now it worked better but there is a new error now:

[mc-image-helper] 17:16:39.774 INFO : Downloaded mod file mods/jei_1.12.2-4.15.0.295.jar
[mc-image-helper] 17:16:39.782 WARN : [c49e62ea-1, L:/172.17.0.2:36312 - R:api.curse.tools/188.114.97.3:443] The connection observed an error
io.netty.handler.timeout.ReadTimeoutException: null
[mc-image-helper] 17:16:39.840 ERROR : 'install-curseforge' command failed. Version is 1.25.7
io.netty.handler.timeout.ReadTimeoutException: null
[init] ERROR failed to auto-install CurseForge modpack

Used Command:
docker run -d -it -p 25565:25565 --name SkyFactory -e EULA=TRUE -e MEMORY=2G -e VIEW_DISTANCE=10 -e FETCH_TLS_HANDSHAKE_TIMEOUT="PT40S" -e TYPE=AUTO_CURSEFORGE -e CF_PAGE_URL=https://www.curseforge.com/minecraft/modpacks/skyfactory-4/files/3565683 -e VERSION=1.12.2 itzg/minecraft-server

@itzg
Copy link
Owner

itzg commented Mar 4, 2023

You can also set FETCH_RESPONSE_TIMEOUT to something longer than the default PT20S. Your network seems to be suboptimal, so I would recommend also looking into that unless you are already aware of it.

@RazeLighter777
Copy link

Hey this is an MTU issue. I fixed this by setting my docker MTU lower. I set mine to 800.

@RazeLighter777
Copy link

For docker compose I added the following options

networks:
  minecraft:
    driver: bridge
    driver_opts:
      com.docker.network.driver.mtu: 800

And added

    networks:
      - minecraft

To the container

@FabMaster2000
Copy link
Author

For docker compose I added the following options


networks:

  minecraft:

    driver: bridge

    driver_opts:

      com.docker.network.driver.mtu: 800

And added


    networks:

      - minecraft

To the container

Thanks a lot. I will try it in a few days :)

@FabMaster2000
Copy link
Author

FabMaster2000 commented Mar 8, 2023

After adding the line which is explained by the following lines:
https://github.com/itzg/docker-minecraft-server#fixing-unable-to-launch-forgemodloader

The modpacks were installed. But at starting the server after that, the following error occured:

[mc-image-helper] 11:04:10.688 INFO  : Downloaded mod file mods/rftoolspower-1.12-1.2.0.jar
[mc-image-helper] 11:04:11.399 INFO  : Downloading Forge installer 14.23.5.2860 for Minecraft 1.12.2
[mc-image-helper] 11:04:13.951 INFO  : Running Forge installer. This might take a while...
[init] Creating server properties in /data/server.properties
[init] Disabling whitelist functionality
[init] Setting initial memory to 2G and max to 2G
[init] Starting the Minecraft server...
A problem occurred running the Server launcher.java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.base/java.lang.reflect.Method.invoke(Unknown Source)
        at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.run(ServerLaunchWrapper.java:70)
        at net.minecraftforge.fml.relauncher.ServerLaunchWrapper.main(ServerLaunchWrapper.java:34)
Caused by: java.lang.ClassCastException: class jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to class java.net.URLClassLoader (jdk.internal.loader.ClassLoaders$AppClassLoader and java.net.URLClassLoader are in module java.base of loader 'bootstrap')
        at net.minecraft.launchwrapper.Launch.<init>(Launch.java:34)
        at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
        ... 6 more

With 'docker inspect'

 "Start": "2023-03-08T11:04:52.526733639Z",
                        "End": "2023-03-08T11:04:52.615113182Z",
                        "ExitCode": 1,
                        "Output": "failed to ping localhost:25565 : could not connect to Minecraft server: dial tcp 127.0.0.1:25565: connect: connection refused"

@itzg
Copy link
Owner

itzg commented Mar 8, 2023

You're using the wrong Java version. Refer to

https://github.com/itzg/docker-minecraft-server#running-minecraft-server-on-different-java-version

@itzg itzg added discussion and removed bug labels Mar 8, 2023
@FabMaster2000
Copy link
Author

You're using the wrong Java version. Refer to

https://github.com/itzg/docker-minecraft-server#running-minecraft-server-on-different-java-version

Oh, doesn't mentioned that. I will try it with java8 / java8-multiarch

@itzg
Copy link
Owner

itzg commented Mar 8, 2023

Ah, I actually am missing a check and warning for non-Java 8 with TYPE=AUTO_CURSEFORGE. I'll fix that.

Otherwise, yes, I do wish the Minecraft software would fail more gracefully with a version mismatch.

@FabMaster2000
Copy link
Author

Is it possible to load the mods not via the command:
-e CF_PAGE_URL=https://www.curseforge.com/minecraft/modpacks/all-the-mods-8

but via a local zip? The zip for the SkyFactory-Server can be downloaded. Is it possible to migrate that?

@itzg
Copy link
Owner

itzg commented Mar 8, 2023

Sure. There's always the old CurseForge mechanism and can fallback to generic pack if the server mod pack is "broken" like most.

@github-actions
Copy link

github-actions bot commented Apr 8, 2023

This issue is stale because it has been open 30 days with no activity. Please add a comment describing the reason to keep this issue open.

@github-actions github-actions bot added the status/stale No recently activity has been seen and will be closed soon. label Apr 8, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Apr 13, 2023
@Louis5487
Copy link

Hey, I still have the same problem even after increasing the FETCH_RESPONSE_TIMEOUT to a longer duration and setting FETCH_TLS_HANDSHAKE_TIMEOUT to something longer.

Here's my input:
docker run --name mc-mod -v /home/louis/mc-data:/data -p 25565:25565 -e EULA=TRUE -e TYPE=AUTO_CURSEFORGE -e FETCH_TLS_HANDSHAKE_TIMEOUT="PT120S" -e FETCH_RESPONSE_TIMEOUT="PT120S" -e CF_SLUG=all-the-mods-8 -e MEMORY=6G -e CF_API_KEY='....' itzg/minecraft-server

And here's my console report:

[mc-image-helper] 12:01:36.603 ERROR : 'install-curseforge' command failed. Version is 1.34.7
reactor.core.Exceptions$ReactiveException: io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException: Failed to resolve 'mediafilez.forgecdn.net' [A(1)] and search domain query for configured domains failed as well: [voo.be]
        at reactor.core.Exceptions.propagate(Exceptions.java:408)
        at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:101)
        at reactor.core.publisher.Mono.block(Mono.java:1712)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.processModpack(CurseForgeInstaller.java:540)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.resolveModpackFileAndProcess(CurseForgeInstaller.java:361)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.installByRetrievingModpackZip(CurseForgeInstaller.java:229)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.lambda$install$4(CurseForgeInstaller.java:159)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.install(CurseForgeInstaller.java:195)
        at me.itzg.helpers.curseforge.CurseForgeInstaller.install(CurseForgeInstaller.java:158)
        at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:202)
        at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:27)
        at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
        at picocli.CommandLine.access$1500(CommandLine.java:148)
        at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
        at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
        at picocli.CommandLine.execute(CommandLine.java:2170)
        at me.itzg.helpers.McImageHelper.main(McImageHelper.java:153)
        Suppressed: java.lang.Exception: #block terminated with an error
                at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:103)
                ... 18 common frames omitted
Caused by: io.netty.resolver.dns.DnsResolveContext$SearchDomainUnknownHostException: Failed to resolve 'mediafilez.forgecdn.net' [A(1)] and search domain query for configured domains failed as well: [voo.be]
        at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1097)
        at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(DnsResolveContext.java:1044)
        at io.netty.resolver.dns.DnsResolveContext.query(DnsResolveContext.java:432)
        at io.netty.resolver.dns.DnsResolveContext.access$700(DnsResolveContext.java:66)
        at io.netty.resolver.dns.DnsResolveContext$2.operationComplete(DnsResolveContext.java:500)
        at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:590)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:583)
        at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:559)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:492)
        at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:636)
        at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:629)
        at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:118)
        at io.netty.resolver.dns.DnsQueryContext.finishFailure(DnsQueryContext.java:348)
        at io.netty.resolver.dns.DnsQueryContext$5.run(DnsQueryContext.java:290)
        at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
        at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:153)
        at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174)
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470)
        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:416)
        at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.base/java.lang.Thread.run(Unknown Source)
Caused by: io.netty.resolver.dns.DnsNameResolverTimeoutException: [42158: /1.1.1.1:53] DefaultDnsQuestion(mediafilez.forgecdn.net. IN A) query '42158' via UDP timed out after 5000 milliseconds (no stack trace available)
[init] ERROR failed to auto-install CurseForge modpack

Thank you in advance for your assistance.

@itzg
Copy link
Owner

itzg commented Aug 29, 2023

@Louis5487 I know stack traces all look like piles of noise, but you don't have the same problem. There is something not working with your DNS

DnsResolveContext$SearchDomainUnknownHostException: Failed to resolve 'mediafilez.forgecdn.net' [A(1)] and search domain query for configured domains failed as well: [voo.be]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status/stale No recently activity has been seen and will be closed soon.
Projects
None yet
Development

No branches or pull requests

4 participants