itzg / docker-bungeecord Goto Github PK
View Code? Open in Web Editor NEWA BungeeCord server to use in conjunction with itzg/minecraft-server
License: Apache License 2.0
A BungeeCord server to use in conjunction with itzg/minecraft-server
License: Apache License 2.0
In a Docker environment with a HAProxy the proxy_protocol
setting is essential, unfortunately then mc-status does not work anymore. Is there a possibility to extend mc-status with query packets or to implement the protocol adjustments optionally?
If this is the wrong place, I'm happy to create the issue directly in the mc-status github issue area
As my work to create charts continue, I came across an issue when trying to specify a custom bungee jar, like FlameCord.jar. The documentation appears to say that I only need $BUNGEE_JAR_URL, but it appears to not run unless BUNGEE_JAR is defined.
Hi,
Have you this in focus? https://discord.com/channels/289587909051416579/492517675680006144/844716870904971275
This is a reminder that version 1 of the PaperMC downloads API is deprecated and will be removed in the future - please move to using version 2 of the downloads API to avoid service interruptions.
Is this a problem?
Actually they have a maintenance problem and waterfall doesn't start.
If the proxy version changes, the old jar sticks around.
Especially if you allow the container to pull the latest jar on start, this makes some mess.
This is a feature request to clean up following upgrades.
For the sake of consistency, adding an identical (or similar) healthcheck to this image would be a good idea. I'm making this an issue rather than a PR right away because I need to test whether the library works with Bungee proxies. I'm assuming it does, but looking at some of the handshaking code used in Dinnerbone's lib, it's probably a good idea to test it before going to a PR.
Hello,
I make that issue for propose to tag the images when is published.
That is useful for fix version of image without pass the hash like itzg/bungeecord:latest@sha256:fd084c6d9a456226e3c17e2318a47db2fd7842a171709c20dc03b0e0211ff888
.
Thanks.
.
Why is bungeecord using FROM adoptopenjdk:11-jre-hotspot
and server using adoptopenjdk/openjdk11:alpine-jre
?
Would it be possible to add a setting here that allows to use the Bedrock status?
Line 10 in ea211a6
So I wanted to update to latest version of Bungecord so tried ot add the variables to my docker-compose.
mcb-bungee:
container_name: mcb-bungee
image: itzg/bungeecord
ports:
- "25565:25577"
- "127.0.0.1:1030:1025"
volumes:
- "./mcb-bungee/server:/server"
- "./mcb-bungee/plugins:/plugins"
- "./mcb-bungee/config:/config"
environment:
BUNGEE_JOB_ID: "lastStableBuild"
BUNGEE_BASE_URL: "https://ci.md-5.net/job/BungeeCord"
BUNGEE_JAR_URL: "${BUNGEE_BASE_URL}/${BUNGEE_JOB_ID}/artifact/bootstrap/target/BungeeCord.jar"
BUNGEE_JAR: "BungeeCord.jar"
restart: unless-stopped
networks:
- mc
depends_on:
- mcdb
However when the server starts it complains that the variables are not set.
The BUNGEE_BASE_URL variable is not set. Defaulting to a blank string.
The BUNGEE_JOB_ID variable is not set. Defaulting to a blank string.
Recreating mcb-bungee ... done
And then it still complains in the log about beeing outdated.
*** Warning, this build is outdated ***
*** Please download a new build from http://ci.md-5.net/job/BungeeCord ***
*** You will get NO support regarding this build ***
*** Server will start in 10 seconds ***
https://www.spigotmc.org/resources/bungeetablistplus.313/
I using this results in errors because it includes jar files for sponge and more which are attempted to run. Is there way to fix this?
Hello,
Could publish the image with versioning and for different java version like https://github.com/itzg/docker-minecraft-server/ ?
Tahnks
Hello,
I use that image in kubernetes and i want to propose add https://github.com/BorlCand/bungeecord-rcon and https://github.com/itzg/rcon-cli for send end
when stop the container, but before implement that i just want see the interest for that
Thanks.
With Mojang's decision to make Minecraft 1.17 require Java 16 or later and servers like Spigot/Paper following suite, Java 16+ will be required for some plugins to continue to function even on Bungeecord. The ViaVersion plugin is already one I have seen give Java version warnings.
This is a feature request to have Java 16+ Images available.
I start the container and in the logs I see this:
Downloading https://ci.md-5.net/job/BungeeCord/lastStableBuild/artifact/bootstrap/target/BungeeCord.jar
curl: (28) Timeout was reached
ERROR: failed to download
I've tried using the image in docker-compose, though when starting the following comes up:
14:32:00 [SEVERE] Exception in thread "main"
14:32:00 [SEVERE] java.lang.ExceptionInInitializerError
14:32:00 [SEVERE] at net.md_5.bungee.netty.PipelineUtils.newEventLoopGroup(PipelineUtils.java:123)
14:32:00 [SEVERE] at net.md_5.bungee.BungeeCord.start(BungeeCord.java:263)
14:32:00 [SEVERE] at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:62)
14:32:00 [SEVERE] at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15)
14:32:00 [SEVERE] Caused by: java.lang.IllegalArgumentException: availableProcessors: 0 (expected: > 0)
14:32:00 [SEVERE] at io.netty.util.internal.ObjectUtil.checkPositive(ObjectUtil.java:44)
14:32:00 [SEVERE] at io.netty.util.NettyRuntime$AvailableProcessorsHolder.setAvailableProcessors(NettyRuntime.java:44)
14:32:00 [SEVERE] at io.netty.util.NettyRuntime$AvailableProcessorsHolder.availableProcessors(NettyRuntime.java:70)
14:32:00 [SEVERE] at io.netty.util.NettyRuntime.availableProcessors(NettyRuntime.java:98)
14:32:00 [SEVERE] at io.netty.channel.MultithreadEventLoopGroup.<clinit>(MultithreadEventLoopGroup.java:41)
14:32:00 [SEVERE] ... 4 more
docker-compose.yml:
version: '3.8'
services:
lobby:
image: itzg/minecraft-server:adopt11
volumes:
- ./lobby:/data
environment:
- TYPE=SPIGOT
- VERSION=Spigot-1.8.8-R0.1-SNAPSHOT-latest
- EULA=TRUE
- ONLINE_MODE=FALSE
restart: always
bungeecord:
image: itzg/bungeecord
ports:
- 25565:25577
# environment:
# - MEMORY=1028m
volumes:
- ./bungeecord:/server
restart: always
deploy:
resources:
limits:
cpus: '1'
Thanks in advance :)
PaperMC recommends the use of their Parchment API instead of using the CI directly.
For Waterfall, this would be:
Content-Disposition
header, so you can safely download without redirecting the filename, but I reckon that will be wanted.Dear itzg,
I just pulled your latest bungeecord container from docker hub, running waterfall. https://hub.docker.com/layers/itzg/bungeecord/latest/images/sha256-87ec2c830b1dc393b8cbd35d19dc9add305a9c38cf7f0426ea0b2f9acd1b9281
I am now unable to run PLAN, it throws the error below. Reverting the container to the the version before the latest solves the issue.
Exception encountered when loading plugin: Plan
java.lang.UnsatisfiedLinkError: sun.management.OperatingSystemImpl.getSystemCpuLoad()D
at sun.management.OperatingSystemImpl.getSystemCpuLoad(Native Method) ~[?:1.8.0_212]
at com.djrapitops.plan.gathering.SystemUsage.getAverageSystemLoad(SystemUsage.java:59) ~[?:?]
at com.djrapitops.plan.gathering.timed.SystemUsageBuffer.warmUp(SystemUsageBuffer.java:51) ~[?:?]
at com.djrapitops.plan.gathering.timed.SystemUsageBuffer.<init>(SystemUsageBuffer.java:47) ~[?:?]
at com.djrapitops.plan.gathering.timed.SystemUsageBuffer_Factory.newInstance(SystemUsageBuffer_Factory.java:25) ~[?:?]
at com.djrapitops.plan.gathering.timed.SystemUsageBuffer_Factory.get(SystemUsageBuffer_Factory.java:17) ~[?:?]
at com.djrapitops.plan.gathering.timed.SystemUsageBuffer_Factory.get(SystemUsageBuffer_Factory.java:6) ~[?:?]
at plan.dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[?:?]
at com.djrapitops.plan.gathering.timed.ProxyTPSCounter_Factory.get(ProxyTPSCounter_Factory.java:47) ~[?:?]
at com.djrapitops.plan.gathering.timed.ProxyTPSCounter_Factory.get(ProxyTPSCounter_Factory.java:12) ~[?:?]
at plan.dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[?:?]
at plan.dagger.internal.SetFactory.get(SetFactory.java:126) ~[?:?]
at plan.dagger.internal.SetFactory.get(SetFactory.java:37) ~[?:?]
at com.djrapitops.plan.TaskSystem_Factory.get(TaskSystem_Factory.java:30) ~[?:?]
at com.djrapitops.plan.TaskSystem_Factory.get(TaskSystem_Factory.java:9) ~[?:?]
at plan.dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[?:?]
at com.djrapitops.plan.PlanSystem_Factory.get(PlanSystem_Factory.java:120) ~[?:?]
at com.djrapitops.plan.PlanSystem_Factory.get(PlanSystem_Factory.java:28) ~[?:?]
at plan.dagger.internal.DoubleCheck.get(DoubleCheck.java:47) ~[?:?]
at com.djrapitops.plan.DaggerPlanBungeeComponent.system(DaggerPlanBungeeComponent.java:767) ~[?:?]
at com.djrapitops.plan.PlanBungee.onEnable(PlanBungee.java:71) ~[?:?]
at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:300) ~[Waterfall-1.16-403.jar:git:Waterfall-Bootstrap:1.16-R0.5-SNAPSHOT:7395ab3:403]
at net.md_5.bungee.BungeeCord.start(BungeeCord.java:289) ~[Waterfall-1.16-403.jar:git:Waterfall-Bootstrap:1.16-R0.5-SNAPSHOT:7395ab3:403]
at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:62) ~[Waterfall-1.16-403.jar:git:Waterfall-Bootstrap:1.16-R0.5-SNAPSHOT:7395ab3:403]
at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[Waterfall-1.16-403.jar:git:Waterfall-Bootstrap:1.16-R0.5-SNAPSHOT:7395ab3:403]
if [ -d /plugins ]; then
echo "Copying BungeeCord plugins over..."
cp -r /plugins $BUNGEE_HOME
fi
Add a -u
update flag to the operation to avoid overwrites in this scenerio:
I'd love for tags like on itzg/minecraft-server
for specific Java versions, as some of my plugins require Java 11+.
Hey guys,
I'm trying to start the container with a non-root user, so I made this command:
docker run -it -v ~/data_bungee:/server --user $(id -u) itzg/bungeecord
But CURL return an error while downloading the initial .jar:
Downloading https://ci.md-5.net/job/BungeeCord/lastStableBuild/artifact/bootstrap/target/BungeeCord.jar
curl: (23) Failed writing body (0 != 744)
ERROR: failed to download
It's weird because itzg/minecraft-server works perfectly fine with the same command.
Hey, any chance of a helm chart for this one?
Thanks
It would be great if the bungeecord image would have the same support for the "-e MODS=" parameter included in the minecraft server image just for the plugin folder.
In addition the override parameter would be helpful as well.
Thanks
Is there any way to get access to the bungeecord console? With the minecraft container this is possible with rcon-cli
as you know but this is not working for bungeecord.
Thanks in advance.
I'm using this image in pair with itzg/minecraft-server and I can't have more than 10 users connected to one BungeeCord container. When I'm having 2 BungeeCord instances leading to one PaperSpigot server, I can have 20 players connected to it. I'm also using Docker's internal bridge network to make contact between these containers. Here's a screenshot of this problem:
Hello,
I make that issue for inform of the new download api for waterfall.
That is the documentation for that new api : https://papermc.io/api
Thanks.
https://github.com/itzg/docker-minecraft-server allows running stop -i to shut down gracefully (no kill). The timeout there is also nice. I am missing here. Could it be added?
We are trying to use this docker image for a Waterfall server. We want to be able to customize settings in waterfall.yml
, modules.yml
as well as uploading a server-icon.png
to the container. But it seems that the startup script only copy 'config.yml' from volume /config to /server.
Can we have the ability to copy waterfall.yml
, modules.yml
and server-icon.png
to /server if it is exists in the /config
volume please? Thanks!
(P.S. we can do a PR on this if preferred)
Following up from itzg/docker-minecraft-server#742 I think this would also benefit from something similar, since it is after all, also in a container.
Hey there,
I am using your image for my networks BungeeCord instance and I'd like that bungeecord can see the real IP adress of the User for banning reasons and that stufft.
I already tried to disable the userland-proxy but this didn't solve the problem.
All users are still connecting from the same IP: 10.0.0.2 in my case
nginx fore example sees the users real ip
could you fix this or is this a "BungeeCord in a container" problem?
See #3
I had checked #13 but my situation is a bit different from that case.
I tried to use docker compose so that I can do quick start-ups. Before that I was using docker compose for servers exposing port to the machine network and start bungee manually without docker, and everything works. After moving bungee into docker compose, user start to fail connecting to servers via bungee.
I noticed that the address in config.yml
should different from localhost:port
when bungee is in docker environment.
And I did make a change to that but it still not works.
Since docker compose would give containers a generated name rather than container name in docker-compose.yml
. For example, my compose config is in /mc/pc
and the content is pasted below.
version: '3.7'
services:
lobby:
image: itzg/minecraft-server
environment:
EULA: "TRUE"
TYPE: "PAPER"
MAX_MEMORY: "4G"
VERSION: "1.15.2"
USE_AIKAR_FLAGS: "TRUE"
volumes:
- /mc/pc/lobby:/data
command: --noconsole
restart: always
bungee:
image: itzg/bungeecord
ports:
- 25565:25577
volumes:
- /mc/pc/bungee/server:/server
restart: always
links:
- lobby
The lobby container is now named pc_lobby_1
but not lobby
.
So I tried both
servers:
lobby:
motd: ...
address: lobby:20000
restricted: false
and
servers:
lobby:
motd: ...
address: pc_lobby_1:20000
restricted: false
The first config show a same error when attempt to connect server locally, and the second one crashes the bungee server directly:
I'm not sure if I had provided enough message, if any other config file is required to trace the issue I could paste them below.
Thanks in advanced!
Note: base image provides multiarch support https://hub.docker.com/_/openjdk?tab=tags&page=1&ordering=last_updated&name=8-alpine
I am able to connect to the Waterfall proxy and the two servers connected to it. However I started getting an Unhealthy Container notification.
failed to ping localhost:25577 : json: cannot unmarshal number -1 into Go struct field Version.version.protocol of type uint
Sorry in advance for the text wall. I wanted to include logs and configs up front.
I've been trying for a couple days now to get the bungeecord proxy to connect the backend spigot server. When running the jar files directly on the host, or in the VM, I'm able to connect without issue. However, when containerized, the proxy doesn't seem to be able to reach the mc server.
I am able to connect to the containerized mc server directly in either env. So that at least is working.
Notice that the minecraft logs don't indicate connection activity. That makes me think that I'm either missing something in the configs, or am misunderstanding something to do with docker networking.
In both environments, I get this when connecting to containerized bungeecord:
disconnected with: Could not connect to a default or fallback server, please try again later: io.netty.channel.AbstractChannel$AnnotatedConnectException
In both cases, the minecraft GUI shows that it can see the bungeecord server.
Things I've tried
server.properties
and corresponding values in config.yaml
server.properties/server-ip=
to localhost
and the IP of the vm.Env 1:
Mac OS X (Mojave 10.14.6)
Docker Desktop CE 2.1.0.4
Env 2:
Ubuntu 19.10 (VM, using mhost network)
Docker 19.03.2
Image Versions:
itzg/minecraft-server latest 9a49bf0206ad 13 days ago 333MB
itzg/bungeecord latest 24a259c44966 8 weeks ago 86.6MB
Commands, in seperate tmux panes:
bungeecord:
docker run -it -v $(pwd)/bg/server:/server -v $(pwd)/bg/config:/config -p 25565:25577 itzg/bungeecord
minecraft:
docker run --name mc -v $(pwd)/mc:/data -e TYPE=SPIGOT -e VERSION=1.14.4 -e EULA=TRUE -e ONLINE_MODE=FALSE itzg/minecraft-server --noconsole
Configs
bungeecord
connection_throttle_limit: 3
disabled_commands:
- disabledcommandhere
online_mode: true
log_commands: false
network_compression_threshold: 256
listeners:
- query_port: 25577
motd: '&1Another Bungee server'
tab_list: GLOBAL_PING
query_enabled: false
proxy_protocol: false
forced_hosts:
pvp.md-5.net: pvp
ping_passthrough: false
priorities:
- lobby
bind_local_address: true
host: 0.0.0.0:25577
max_players: 1
tab_size: 60
force_default_server: false
connection_throttle: 4000
groups:
md_5:
- admin
log_pings: true
player_limit: -1
prevent_proxy_connections: false
forge_support: false
stats: 4d8c17c3-1f85-4451-b656-5bad3dea0878
permissions:
default:
- bungeecord.command.server
- bungeecord.command.list
admin:
- bungeecord.command.alert
- bungeecord.command.end
- bungeecord.command.ip
- bungeecord.command.reload
ip_forward: false
timeout: 30000
servers:
lobby:
motd: '&1Just another BungeeCord - Forced Host'
address: localhost:25565
restricted: false
minecraft
#Minecraft server properties
#Tue Dec 10 21:23:25 GMT 2019
spawn-protection=16
max-tick-time=60000
query.port=25565
generator-settings=
force-gamemode=false
allow-nether=true
enforce-whitelist=false
gamemode=survival
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=easy
spawn-monsters=true
broadcast-rcon-to-ops=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=default
hardcore=false
enable-command-block=true
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
function-permission-level=2
rcon.port=25575
server-port=25565
debug=false
texture-pack=
server-ip=
spawn-npcs=true
allow-flight=false
level-name=world
view-distance=10
resource-pack=
spawn-animals=true
white-list=false
rcon.password=minecraft
generate-structures=true
online-mode=false
max-build-height=256
level-seed=
use-native-transport=true
prevent-proxy-connections=false
motd=A Spigot Minecraft Server powered by Docker
enable-rcon=true
Logs
BungeeCord Logs
20:57:32 [INFO] Using mbed TLS based native cipher.
20:57:32 [INFO] Using zlib based native compressor.
20:57:32 [INFO] Enabled BungeeCord version git:BungeeCord-Bootstrap:1.14-SNAPSHOT:70038c9:1425
20:57:32 [INFO] Not on Windows, attempting to use enhanced EpollEventLoop
20:57:32 [INFO] Epoll is working, utilising it!
20:57:32 [INFO] Discovered module: ModuleSpec(name=cmd_alert, file=modules/cmd_alert.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Discovered module: ModuleSpec(name=cmd_find, file=modules/cmd_find.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Discovered module: ModuleSpec(name=cmd_list, file=modules/cmd_list.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Discovered module: ModuleSpec(name=cmd_send, file=modules/cmd_send.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Discovered module: ModuleSpec(name=cmd_server, file=modules/cmd_server.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Discovered module: ModuleSpec(name=reconnect_yaml, file=modules/reconnect_yaml.jar, provider=JenkinsModuleSource())
20:57:32 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:32 [INFO] Attempting to Jenkins download module cmd_alert v1425
20:57:32 [INFO] Download complete
20:57:32 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:32 [INFO] Attempting to Jenkins download module cmd_find v1425
20:57:33 [INFO] Download complete
20:57:33 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:33 [INFO] Attempting to Jenkins download module cmd_list v1425
20:57:33 [INFO] Download complete
20:57:33 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:33 [INFO] Attempting to Jenkins download module cmd_send v1425
20:57:33 [INFO] Download complete
20:57:33 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:33 [INFO] Attempting to Jenkins download module cmd_server v1425
20:57:33 [INFO] Download complete
20:57:33 [INFO] Attempting to update plugin from null to ModuleVersion(build=1425, git=70038c9)
20:57:33 [INFO] Attempting to Jenkins download module reconnect_yaml v1425
20:57:33 [INFO] Download complete
20:57:33 [INFO] Loaded plugin reconnect_yaml version git:reconnect_yaml:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Loaded plugin cmd_find version git:cmd_find:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Loaded plugin cmd_server version git:cmd_server:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Loaded plugin cmd_alert version git:cmd_alert:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Loaded plugin cmd_send version git:cmd_send:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Loaded plugin cmd_list version git:cmd_list:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [WARNING] Forced host server pvp is not defined
20:57:33 [INFO] Enabled plugin reconnect_yaml version git:reconnect_yaml:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Enabled plugin cmd_find version git:cmd_find:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Enabled plugin cmd_server version git:cmd_server:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Enabled plugin cmd_alert version git:cmd_alert:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Enabled plugin cmd_send version git:cmd_send:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Enabled plugin cmd_list version git:cmd_list:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
20:57:33 [INFO] Listening on /0.0.0.0:25577
20:57:41 [INFO] [/192.168.119.1:61423] <-> InitialHandler has connected
20:57:48 [WARNING] [/192.168.119.1:61423] <-> InitialHandler - NativeIoException: readAddress(..) failed: Connection reset by peer
20:57:48 [INFO] [/192.168.119.1:61432] <-> InitialHandler has connected
20:57:49 [INFO] [JonOfArabia] disconnected with: §cCould not connect to a default or fallback server, please try again later: io.netty.channel.AbstractChannel$AnnotatedConnectException
20:57:49 [INFO] [JonOfArabia] -> UpstreamBridge has disconnected
21:21:23 [INFO] Using mbed TLS based native cipher.
21:21:23 [INFO] Using zlib based native compressor.
21:21:23 [INFO] Enabled BungeeCord version git:BungeeCord-Bootstrap:1.14-SNAPSHOT:70038c9:1425
21:21:23 [INFO] Not on Windows, attempting to use enhanced EpollEventLoop
21:21:23 [INFO] Epoll is working, utilising it!
21:21:23 [INFO] Discovered module: ModuleSpec(name=cmd_alert, file=modules/cmd_alert.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Discovered module: ModuleSpec(name=cmd_find, file=modules/cmd_find.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Discovered module: ModuleSpec(name=cmd_list, file=modules/cmd_list.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Discovered module: ModuleSpec(name=cmd_send, file=modules/cmd_send.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Discovered module: ModuleSpec(name=cmd_server, file=modules/cmd_server.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Discovered module: ModuleSpec(name=reconnect_yaml, file=modules/reconnect_yaml.jar, provider=JenkinsModuleSource())
21:21:23 [INFO] Loaded plugin reconnect_yaml version git:reconnect_yaml:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Loaded plugin cmd_find version git:cmd_find:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Loaded plugin cmd_server version git:cmd_server:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Loaded plugin cmd_alert version git:cmd_alert:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Loaded plugin cmd_send version git:cmd_send:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Loaded plugin cmd_list version git:cmd_list:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [WARNING] Forced host server pvp is not defined
21:21:23 [INFO] Enabled plugin reconnect_yaml version git:reconnect_yaml:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Enabled plugin cmd_find version git:cmd_find:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Enabled plugin cmd_server version git:cmd_server:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Enabled plugin cmd_alert version git:cmd_alert:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Enabled plugin cmd_send version git:cmd_send:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:23 [INFO] Enabled plugin cmd_list version git:cmd_list:1.14-SNAPSHOT:70038c9:1425 by SpigotMC
21:21:24 [INFO] Listening on /0.0.0.0:25577
21:21:32 [INFO] [/192.168.119.1:63272] <-> InitialHandler has connected
21:21:33 [INFO] [/192.168.119.1:63276] <-> InitialHandler has connected
21:21:34 [INFO] [JonOfArabia] disconnected with: §cCould not connect to a default or fallback server, please try again later: io.netty.channel.AbstractChannel$AnnotatedConnectException
21:21:34 [INFO] [JonOfArabia] -> UpstreamBridge has disconnected
Minecraft Logs
[21:23:29] [Server thread/INFO]: Starting minecraft server version 1.14.4
[21:23:29] [Server thread/INFO]: Loading properties
[21:23:29] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-9de398a-9c887d4 (MC: 1.14.4) (Implementing API version 1.14.4-R0.1-SNAPSHOT)
[21:23:29] [Server thread/INFO]: Console input is disabled due to --noconsole command argument
[21:23:29] [Server thread/INFO]: Server Ping Player Sample Count: 12
[21:23:29] [Server thread/INFO]: Using 4 threads for Netty based IO
[21:23:29] [Server thread/INFO]: Debug logging is disabled
[21:23:29] [Server thread/INFO]: Default game type: SURVIVAL
[21:23:29] [Server thread/INFO]: Generating keypair
[21:23:30] [Server thread/INFO]: Starting Minecraft server on *:25565
[21:23:30] [Server thread/INFO]: Using epoll channel type
[21:23:30] [Server thread/WARN]: **** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!
[21:23:30] [Server thread/WARN]: The server will make no attempt to authenticate usernames. Beware.
[21:23:30] [Server thread/WARN]: While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose.
[21:23:30] [Server thread/WARN]: To change this, set "online-mode" to "true" in the server.properties file.
[21:23:30] [Server thread/INFO]: Preparing level "world"
[21:23:30] [Server thread/INFO]: Reloading ResourceManager: Default, bukkit
[21:23:32] [Server thread/INFO]: Loaded 6 recipes
<Omitting world settings, doesn't look relevant>
[21:24:02] [Server thread/INFO]: Time elapsed: 1163 ms
[21:24:02] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it
[21:24:02] [Server thread/INFO]: Done (32.038s)! For help, type "help"
[21:24:02] [Server thread/INFO]: Starting remote control listener
[21:24:02] [RCON Listener #1/INFO]: RCON running on 0.0.0.0:25575
bungeecord1 | WARNING: An illegal reflective access operation has occurred
bungeecord1 | WARNING: Illegal reflective access by us.myles.ViaVersion.bungee.platform.BungeeViaInjector (file:/server/plugins/ViaVersion-3.2.2-SNAPSHOT.jar) to field java.lang.reflect.Field.modifiers
bungeecord1 | WARNING: Please consider reporting this to the maintainers of us.myles.ViaVersion.bungee.platform.BungeeViaInjector
bungeecord1 | WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
bungeecord1 | WARNING: All illegal access operations will be denied in a future release
survival_1 | [00:51:09 INFO]: __
survival_1 | [00:51:09 INFO]: | |__) LuckPerms v5.3.3
survival_1 | [00:51:09 INFO]: |___ | Running on Bukkit - Paper
survival_1 | [00:51:09 INFO]:
survival_1 | [00:51:09 INFO]: [LuckPerms] Loading configuration...
lobby2_1 | [00:51:09 INFO]: [LuckPerms] Loading storage provider... [MYSQL]
00:51:09 [INFO] [ViaVersion] Loading 1.16 -> 1.16.2 mappings...
00:51:09 [INFO] [ViaVersion] ViaVersion detected server version: 1.8.x (47)
00:51:09 [INFO] Enabled plugin ViaVersion version 3.2.2-SNAPSHOT by _MylesC, creeper123123321, Gerrygames, KennyTV, Matsv
00:51:09 [INFO] Enabled plugin cmd_server version git:cmd_server:1.16-R0.5-SNAPSHOT:d49e97c:1575 by SpigotMC
00:51:09 [INFO] Enabled plugin cmd_alert version git:cmd_alert:1.16-R0.5-SNAPSHOT:d49e97c:1575 by SpigotMC
00:51:09 [INFO] Enabled plugin cmd_send version git:cmd_send:1.16-R0.5-SNAPSHOT:d49e97c:1575 by SpigotMC
lobby1_1 | [00:51:09 INFO]: [FancyCropTrample] Loading FancyCropTrample v1.2.2
lobby1_1 | [00:51:09 INFO]: [VoidGenerator] Loading VoidGenerator v1.7.0
lobby1_1 | [00:51:09 INFO]: Server permissions file permissions.yml is empty, ignoring it
lobby1_1 | [00:51:09 INFO]: [LuckPerms] Enabling LuckPerms v5.3.3
lobby2_1 | [00:51:09 INFO]: [me.lucko.luckperms.lib.hikari.HikariDataSource] luckperms-hikari - Starting...
lobby2_1 | [00:51:09 INFO]: [me.lucko.luckperms.lib.hikari.HikariDataSource] luckperms-hikari - Start completed.
00:51:10 [INFO] [ServerManager] Couldn't check for an update
00:51:10 [INFO] [ServerManager] You're on the latest version!
00:51:10 [INFO] [ViaVersion] Finished mapping loading, shutting down loader executor!
00:51:10 [INFO] [ServerManager] Couldn't check for an update
00:51:10 [INFO] [ServerManager] You're on the latest version!
As you can see, when running bungee docker image as service, it is not prepending container names to the logs.
bungeecord1: # does not label the logs
image: itzg/bungeecord
container_name: "bungeecord1" # does not label the logs
ports:
- "25566:25565"
# - "19132:19132/udp"
volumes:
- "./bungeecord/plugins:/plugins/:ro" # <-
- "./bungeecord/config:/config/:ro"
environment:
MEMORY: "4096m"
restart: always
depends_on:
- "redis"
- "db"
I can't join my server made on dockers, I have linux mint as core with docker, docker compose and cockpit.
As proxy I use Velocity becose of simple setup.
I have one server cur. it is Paper 1.16.1
code - yml(with removed Unique IDs)
Sorry for this down but it made yml code crazy there.
{
# Config version. Do not change this
config-version = "1.0"
# What port should the proxy be bound to? By default, we'll bind to all addresses on port 25577.
bind = "0.0.0.0:25577"
# What should be the MOTD? This gets displayed when the player adds your server to
# their server list. Legacy color codes and JSON are accepted.
motd = "&3A PerCraft Network"
# What should we display for the maximum number of players? (Velocity does not support a cap
# on the number of players online.)
show-max-players = 100
# Should we authenticate players with Mojang? By default, this is on.
online-mode = true
# Should we forward IP addresses and other data to backend servers?
# Available options:
# - "none": No forwarding will be done. All players will appear to be connecting from the
# proxy and will have offline-mode UUIDs.
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this if
# you run servers using Minecraft 1.12 or lower.
# - "modern": Forward player IPs and UUIDs as part of the login process using Velocity's
# native forwarding. Only applicable for Minecraft 1.13 or higher.
player-info-forwarding-mode = "LEGACY"
# If you are using modern IP forwarding, configure an unique secret here.
forwarding-secret = ""
# Announce whether or not your server supports Forge. If you run a modded server, we
# suggest turning this on.
announce-forge = false
[servers]
# Configure your servers here. Each key represents the server's name, and the value
# represents the IP address of the server to connect to.
lobby = "lobby:25566"
# In what order we should try servers when a player logs in or is kicked from aserver.
try = [
"lobby"
]
[forced-hosts]
# Configure your forced hosts here.
"lobby.percraft.otzo.com" = [
"lobby"
]
[advanced]
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
# compress all packets, and setting it to -1 will disable compression entirely.
compression-threshold = 256
# How much compression should be done (from 0-9). The default is -1, which uses the
# default level of 6.
compression-level = -1
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
# default, this is three seconds. Disable this by setting this to 0.
login-ratelimit = 2000
# Specify a custom timeout for connection timeouts here. The default is five seconds.
connection-timeout = 5000
# Specify a read timeout for connections here. The default is 30 seconds.
read-timeout = 30000
# Enables compatibility with HAProxy.
proxy-protocol = false
[query]
# Whether to enable responding to GameSpy 4 query responses or not.
enabled = true
# If query is enabled, on what port should the query protocol listen on?
port = 25577
# This is the map name that is reported to the query services.
map = "Velocity"
# Whether plugins should be shown in query response by default or not
show-plugins = false
[metrics]
# Whether metrics will be reported to bStats (https://bstats.org).
# bStats collects some basic information, like how many people use Velocity and their
# player count. We recommend keeping bStats enabled, but if you're not comfortable with
# this, you can turn this setting off. There is no performance penalty associated with
# having metrics enabled, and data sent to bStats can't identify your server.
enabled = true
# A unique, anonymous ID to identify this proxy with.
id = ""
log-failure = true
}
All runs with no errors but I can't join server it gives error "Unable to conect to lobby. Try again later."
Is this intended?
https://github.com/itzg/docker-bungeecord/blob/java8/Dockerfile#L1
I've just finished getting all setup with itzg/bungeecord
and itzg/minecraft-server
, however when clients connect via Bungee they are invisible. Other entities/actions work fine, can throw items and they show up on both clients, destroy/place blocks, etc.
Could this be an issue relating to the Docker images, or perhaps an issue with Bungee/Paper. I have tried both BungeeCord and Waterfall, have not yet swapped away from Paper.
I have a VPN setup inside the Docker swarm network, which allows me to direct connect to the MC servers, upon doing this both clients are visible. If 1 client is connected to Bungee and 1 to Paper, both clients are visible. If both clients are connected via Bungee, both are invisible.
Edit: Also tried with standard Spigot, same issue.
Edit 2: Removed all plugins from the Paper server and still experiencing the same issue
Hi,
So we have managed to get bungeecord working on 25565, however.. it seems like it's just running not caring about when we change the config and doesn't really load the plugins in bungeecord. It's all simply just default.
This is our docker-compose-yml:
https://justpaste.it/7gbgy
Could you help us with this? Thanks
Forgive me if I'm missing something that's much more simple. As of about 24 hours ago, the repo [itzg/docker-bungeecord:latest] does not appear to exist. The same issue does not appear with the itzg/minecaft-server image. Both of which are awesome.
Unable to find image 'itzg/docker-bungeecord:latest' locally
docker: Error response from daemon: pull access denied for itzg/docker-bungeecord, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
See 'docker run --help'.
For example, the java8 branch does not yet have the correct permissions set for health.sh
. The same is true for the README changes. Is this handled with the tags/releases and docker-versions-create.sh
?
Hi,
I'm currently using itzg/minecraft-server to host my MC servers, which has the ability to passthrough environment variables like so:
minecraft:
image: itzg/minecraft-server
restart: always
environment:
EULA: "true"
ONLINE_MODE: "false"
TYPE: PAPER
VERSION: 1.16.1
MEMORY: 6G
VAULT_TOKEN: ~
MONGO_VAULT_CREDENTIAL: ~
REDIS_VAULT_CREDENTIAL: ~
MAX_PLAYERS: 200
ALLOW_NETHER: "false"
GENERATE_STRUCTURES: "false"
USE_AIKAR_FLAGS: "true"
volumes:
- /data/minecraft/plugins:/plugins
networks:
- myNetwork
deploy:
mode: replicated
replicas: 1
Note that, VAULT_TOKEN
, MONGO_VAULT_CREDENTIAL
and REDIS_VAULT_CREDENTIAL
are all set on the Minecraft server.
When doing the same using itzg/bungeecord, the environment variables are not passed through to the app, like this:
bungeecord:
image: itzg/bungeecord
restart: always
ports:
- "25565:25577"
environment:
TYPE: WATERFALL
MEMORY: 2G
VAULT_TOKEN: ~
MONGO_VAULT_CREDENTIAL: ~
REDIS_VAULT_CREDENTIAL: ~
volumes:
- /data/bungeecord/plugins:/plugins
- /data/bungeecord/config:/config
- /data/bungeecord/server:/server
networks:
- myNetwork
deploy:
mode: replicated
replicas: 1
The same environment variables are not set, or at the very least, they are not visible in System#getenv()
and are null in System#getenv(String)
Is this intentional/something Bungee related? I've looked through the Dockerfile and haven't spotted anything that sticks out in terms of scraping the environment variables out, nor is there any documentation of a prefix that is required to pass through.
cc @RiceCX
When starting the container I het the following in the log: Warning: Illegal date format for -z, --time-cond (and not a file name). This is the first part of the debug log containing the error
[init] Resolving type given VELOCITY,
[init] Downloading https://versions.velocitypowered.com/download/latest.jar,
+ extraCurlArgs=(-v),
+ log 'Resolving type given VELOCITY',
+ echo '[init] Resolving type given VELOCITY',
+ case "${TYPE^^}" in,
+ : latest,
+ BUNGEE_JAR_URL=https://versions.velocitypowered.com/download/latest.jar,
+ BUNGEE_JAR=/server/Velocity-latest.jar,
+ isTrue true,
+ local value=true,�,
=,
+ case ${value} in,
+ result=0,
+ return 0,
+ '[' -f /server/Velocity-latest.jar ']',
+ zarg='-z '\''/server/Velocity-latest.jar'\''',
+ log 'Downloading https://versions.velocitypowered.com/download/latest.jar',
+ echo '[init] Downloading https://versions.velocitypowered.com/download/latest.jar',
+ curl -o /server/Velocity-latest.jar -z ''\''/server/Velocity-latest.jar'\''' -fsSL https://versions.velocitypowered.com/download/latest.jar,
Warning: Illegal date format for -z, --time-cond (and not a file name). ,
Warning: Disabling time condition. See curl_getdate(3) for valid date syntax.,
+ '[' -d /plugins ']',
+ [[ -n '' ]],
+ [[ -n '' ]],
Hi, just tried the latest (saw you pushed 4 hours ago or so), and getting the following error:
ERROR: for bungeecord Cannot start service bungeecord: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "/usr/bin/run-bungeecord.sh": permission denied: unknown
Is this a permissions issue during the build of the docker container?
EDIT: I built the image locally after setting +x on run-bungeecord.sh
and it at least starts up now, though it's saying that it's unhealthy. Looking into it.
EDIT2: It's working, depite the "unhealthy" message in docker ps
Hi, I'm trying to setup my proxy using custom jar. Currently I'm getting error:
proxy_1 | Resolving type given CUSTOM
proxy_1 | Using custom server jar at proxy.jar ...
proxy_1 | Downloading proxy.jar
proxy_1 | curl: (6) Could not resolve host: proxy.jar
proxy_1 | ERROR: failed to download
with docker-compose.yml:
proxy:
stdin_open: true
tty: true
image: itzg/bungeecord
ports:
- '25565:25565'
volumes:
- './bungee-vol:/server'
environment:
TYPE: "CUSTOM"
BUNGEE_JAR_URL: "proxy.jar"
MEMORY: "2G"
With minecraft-server custom jar works perfectly fine.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.