[{"data":1,"prerenderedAt":685},["ShallowReactive",2],{"\u002Fguides\u002Fvelocity-proxy-cannot-connect-backend-docker\u002F":3,"guides:en":516,"published-guide-paths":658},{"id":4,"title":5,"author":6,"body":7,"category":470,"date":471,"description":472,"excerpt":473,"extension":474,"faq":475,"featured":485,"featuredOrder":473,"indexOrder":486,"localeGroup":487,"meta":488,"navigation":489,"path":490,"primaryTool":491,"published":489,"related":492,"seo":496,"slug":497,"sources":498,"stem":514,"updated":471,"__hash__":515},"guides\u002Fguides\u002F25.velocity-proxy-cannot-connect-backend-docker.md","Velocity cannot reach Paper: check the Docker connection","setupmc.com Team",{"type":8,"value":9,"toc":457},"minimark",[10,15,19,35,43,47,50,60,67,76,80,83,91,94,102,105,127,134,138,141,147,154,157,163,166,172,183,187,198,204,207,234,237,241,244,250,257,265,272,276,282,310,318,322,415,419,422,428,431,435],[11,12,14],"h2",{"id":13},"start-with-the-exact-failure-layer","Start with the exact failure layer",[16,17,18],"p",{},"“Velocity cannot connect” can describe four different failures:",[20,21,22,26,29,32],"ol",{},[23,24,25],"li",{},"the backend container is stopped or restarting",[23,27,28],{},"the proxy cannot resolve or route to the backend container",[23,30,31],{},"nothing listens on the configured backend port yet",[23,33,34],{},"TCP succeeds, but player forwarding rejects the login",[16,36,37,38,42],{},"Do not change forwarding secrets to fix an ",[39,40,41],"code",{},"UnknownHostException",", and do not publish the backend port merely to work around a missing Docker network.",[11,44,46],{"id":45},"step-1-preserve-the-first-useful-error","Step 1: Preserve the first useful error",[16,48,49],{},"Capture state and bounded logs before restarting repeatedly:",[51,52,58],"pre",{"className":53,"code":55,"language":56,"meta":57},[54],"language-bash","docker compose ps -a\ndocker compose logs --tail=200 proxy lobby\ndocker inspect \"$(docker compose ps -q lobby)\" --format 'status={{.State.Status}} exit={{.State.ExitCode}} oom={{.State.OOMKilled}} health={{if .State.Health}}{{.State.Health.Status}}{{else}}none{{end}}'\n","bash","",[39,59,55],{"__ignoreMap":57},[16,61,62,63,66],{},"Replace ",[39,64,65],{},"lobby"," if your backend service has another name.",[16,68,69,70,75],{},"If Paper is exiting, solve that first. The ",[71,72,74],"a",{"href":73},"\u002Fguides\u002Fminecraft-container-keeps-restarting-docker-compose\u002F","container restart-loop runbook"," separates EULA, Java, permissions, memory, and configuration failures.",[11,77,79],{"id":78},"step-2-verify-the-address-in-velocitytoml","Step 2: Verify the address in velocity.toml",[16,81,82],{},"For this Compose model:",[51,84,89],{"className":85,"code":87,"language":88,"meta":57},[86],"language-yaml","services:\n  proxy:\n    networks: [minecraft]\n  lobby:\n    networks: [minecraft]\nnetworks:\n  minecraft: {}\n","yaml",[39,90,87],{"__ignoreMap":57},[16,92,93],{},"Velocity should use:",[51,95,100],{"className":96,"code":98,"language":99,"meta":57},[97],"language-toml","[servers]\nlobby = \"lobby:25565\"\ntry = [\"lobby\"]\n","toml",[39,101,98],{"__ignoreMap":57},[16,103,104],{},"Avoid these common mistakes:",[106,107,108,114,117,124],"ul",{},[23,109,110,113],{},[39,111,112],{},"localhost:25565",": points back into the proxy container",[23,115,116],{},"a container IP: changes when Docker recreates the container",[23,118,119,120,123],{},"a host mapping such as ",[39,121,122],{},"25566",": irrelevant for traffic inside the Compose network",[23,125,126],{},"the public domain: leaves Docker and creates an unnecessary external round trip",[16,128,129,130,133],{},"Docker registers the service name on shared Compose networks. Use the service name, not ",[39,131,132],{},"container_name",", as the stable contract.",[11,135,137],{"id":136},"step-3-compare-network-membership","Step 3: Compare network membership",[16,139,140],{},"Render the effective model and inspect the live networks:",[51,142,145],{"className":143,"code":144,"language":56,"meta":57},[54],"docker compose config\ndocker inspect \"$(docker compose ps -q proxy)\" --format '{{json .NetworkSettings.Networks}}'\ndocker inspect \"$(docker compose ps -q lobby)\" --format '{{json .NetworkSettings.Networks}}'\n",[39,146,144],{"__ignoreMap":57},[16,148,149,150,153],{},"Both containers need at least one network name in common. If the proxy and backend are defined in separate Compose projects, their implicit ",[39,151,152],{},"default"," networks are different even if the YAML looks similar.",[16,155,156],{},"Create one explicit external network for separate projects:",[51,158,161],{"className":159,"code":160,"language":56,"meta":57},[54],"docker network create minecraft-proxy\n",[39,162,160],{"__ignoreMap":57},[16,164,165],{},"Then declare it in both Compose files:",[51,167,170],{"className":168,"code":169,"language":88,"meta":57},[86],"networks:\n  minecraft:\n    external: true\n    name: minecraft-proxy\n",[39,171,169],{"__ignoreMap":57},[16,173,174,175,178,179,182],{},"Attach the relevant services to ",[39,176,177],{},"minecraft"," and recreate them. Do not use the deprecated ",[39,180,181],{},"links"," field as a substitute for correct network membership.",[11,184,186],{"id":185},"step-4-test-from-the-proxy-namespace","Step 4: Test from the proxy namespace",[16,188,189,190,193,194,197],{},"The decisive check runs from the same namespace as Velocity. The ",[39,191,192],{},"itzg\u002Fmc-proxy"," image includes ",[39,195,196],{},"mc-monitor",", which is also used for its healthcheck:",[51,199,202],{"className":200,"code":201,"language":56,"meta":57},[54],"docker compose exec proxy mc-monitor status --host lobby --port 25565\n",[39,203,201],{"__ignoreMap":57},[16,205,206],{},"Interpret the result with the backend logs:",[106,208,209,216,222,228],{},[23,210,211,215],{},[212,213,214],"strong",{},"name cannot resolve",": service name or shared network is wrong",[23,217,218,221],{},[212,219,220],{},"connection refused",": address resolves, but Paper is not listening on 25565",[23,223,224,227],{},[212,225,226],{},"timeout",": network path or firewall policy drops the connection",[23,229,230,233],{},[212,231,232],{},"status succeeds",": the TCP\u002Fapplication path works; investigate forwarding or login policy",[16,235,236],{},"Do not run only a test from the Docker host. Host reachability does not prove that the proxy container has the same route.",[11,238,240],{"id":239},"step-5-confirm-paper-is-actually-ready","Step 5: Confirm Paper is actually ready",[16,242,243],{},"Inspect the most recent startup attempt:",[51,245,248],{"className":246,"code":247,"language":56,"meta":57},[54],"docker compose logs --since=10m lobby\n",[39,249,247],{"__ignoreMap":57},[16,251,252,253,256],{},"Look for the normal ready message and check that Paper did not bind to a different address or port. In ",[39,254,255],{},"server.properties",", the normal container-friendly values are:",[51,258,263],{"className":259,"code":261,"language":262,"meta":57},[260],"language-properties","server-ip=\nserver-port=25565\n","properties",[39,264,261],{"__ignoreMap":57},[16,266,267,268,271],{},"Leaving ",[39,269,270],{},"server-ip"," empty allows the server to listen on the container interfaces. Setting it to a host IP that does not exist inside the container can prevent startup.",[11,273,275],{"id":274},"step-6-separate-routing-from-forwarding","Step 6: Separate routing from forwarding",[16,277,278,279,281],{},"Once ",[39,280,196],{}," reaches Paper, a remaining player kick is usually configuration rather than networking. Compare:",[106,283,284,293,301,304,307],{},[23,285,286,289,290],{},[39,287,288],{},"player-info-forwarding-mode = \"modern\""," in ",[39,291,292],{},"velocity.toml",[23,294,295,289,298],{},[39,296,297],{},"proxies.velocity.enabled: true",[39,299,300],{},"paper-global.yml",[23,302,303],{},"matching forwarding secrets",[23,305,306],{},"matching proxy online-mode value",[23,308,309],{},"legacy Bungee forwarding disabled",[16,311,312,313,317],{},"Use the ",[71,314,316],{"href":315},"\u002Fguides\u002Fvelocity-modern-forwarding-paper-docker\u002F","modern forwarding guide"," for the exact configuration. Change one layer at a time and repeat the same login test.",[11,319,321],{"id":320},"symptom-table","Symptom table",[323,324,325,341],"table",{},[326,327,328],"thead",{},[329,330,331,335,338],"tr",{},[332,333,334],"th",{},"Error",[332,336,337],{},"Most likely layer",[332,339,340],{},"First action",[342,343,344,358,369,380,393,404],"tbody",{},[329,345,346,352,355],{},[347,348,349,350],"td",{},"Unknown host ",[39,351,65],{},[347,353,354],{},"Docker DNS\u002Fnetwork membership",[347,356,357],{},"Compare live network names",[329,359,360,363,366],{},[347,361,362],{},"Connection refused",[347,364,365],{},"Backend stopped or not listening",[347,367,368],{},"Read Paper startup logs",[329,370,371,374,377],{},[347,372,373],{},"Connection timed out",[347,375,376],{},"Route or firewall drops traffic",[347,378,379],{},"Test from proxy namespace and inspect networks",[329,381,382,387,390],{},[347,383,384],{},[39,385,386],{},"This server requires you to connect with Velocity",[347,388,389],{},"Forwarding mismatch",[347,391,392],{},"Align modern forwarding on both sides",[329,394,395,398,401],{},[347,396,397],{},"Works after long delay",[347,399,400],{},"Proxy starts before Paper is ready",[347,402,403],{},"Use health\u002Freadiness checks; avoid restart loops",[329,405,406,409,412],{},[347,407,408],{},"Works via published port only",[347,410,411],{},"Containers do not share a network",[347,413,414],{},"Fix the shared network and remove backend publication",[11,416,418],{"id":417},"validate-the-repair","Validate the repair",[16,420,421],{},"The repair is complete only when all checks pass:",[51,423,426],{"className":424,"code":425,"language":56,"meta":57},[54],"docker compose ps\ndocker compose exec proxy mc-monitor status --host lobby --port 25565\ndocker compose port lobby 25565\n",[39,427,425],{"__ignoreMap":57},[16,429,430],{},"The backend status check should succeed, and the final command should not reveal a host-published port. Join through Velocity and confirm that the backend sees the correct forwarded identity.",[11,432,434],{"id":433},"next-steps","Next steps",[106,436,437,445,451],{},[23,438,439,440,444],{},"Return to the ",[71,441,443],{"href":442},"\u002Fguides\u002Fvelocity-proxy-docker-compose-itzg-mc-proxy\u002F","complete Velocity Compose setup",".",[23,446,447,448,444],{},"Secure the working path with ",[71,449,450],{"href":315},"modern forwarding and backend isolation",[23,452,453,454,444],{},"If Paper itself is unstable, diagnose the ",[71,455,456],{"href":73},"Docker restart loop",{"title":57,"searchDepth":458,"depth":458,"links":459},2,[460,461,462,463,464,465,466,467,468,469],{"id":13,"depth":458,"text":14},{"id":45,"depth":458,"text":46},{"id":78,"depth":458,"text":79},{"id":136,"depth":458,"text":137},{"id":185,"depth":458,"text":186},{"id":239,"depth":458,"text":240},{"id":274,"depth":458,"text":275},{"id":320,"depth":458,"text":321},{"id":417,"depth":458,"text":418},{"id":433,"depth":458,"text":434},"networking","2026-08-01","Check container state, the shared network, service name, and backend port.",null,"md",[476,479,482],{"question":477,"answer":478},"Why does localhost not reach my Paper server from Velocity?","Inside the proxy container, localhost refers to that proxy container. Use the Paper Compose service name and its container port when the services share a Docker network.",{"question":480,"answer":481},"Should Velocity use the host port or container port?","Service-to-service traffic inside a Compose network uses the backend container port, normally 25565. A host mapping such as 25566:25565 is only for traffic entering from the host or outside Docker.",{"question":483,"answer":484},"Does depends_on guarantee that Paper is ready?","No. Basic dependency ordering starts containers in order but does not prove that the Minecraft server has finished loading. Use logs and health state to distinguish startup delay from a broken path.",false,"4","velocity-backend-unreachable-docker",{},true,"\u002Fguides\u002Fvelocity-proxy-cannot-connect-backend-docker","proxy-configurator",[493,494,495],"velocity-proxy-docker-compose","velocity-modern-forwarding-paper","docker-minecraft-restart-loop",{"title":5,"description":472},"velocity-proxy-cannot-connect-backend-docker",[499,502,505,508,511],{"title":500,"url":501},"Docker Compose networking and debugging","https:\u002F\u002Fdocs.docker.com\u002Fcompose\u002Fhow-tos\u002Fnetworking\u002F",{"title":503,"url":504},"Docker Compose networks reference","https:\u002F\u002Fdocs.docker.com\u002Freference\u002Fcompose-file\u002Fnetworks\u002F",{"title":506,"url":507},"Velocity frequently asked questions","https:\u002F\u002Fdocs.papermc.io\u002Fvelocity\u002Ffaq\u002F",{"title":509,"url":510},"Velocity configuration reference","https:\u002F\u002Fdocs.papermc.io\u002Fvelocity\u002Fconfiguration\u002F",{"title":512,"url":513},"itzg\u002Fmc-proxy healthcheck and settings","https:\u002F\u002Fgithub.com\u002Fitzg\u002Fdocker-mc-proxy","guides\u002F25.velocity-proxy-cannot-connect-backend-docker","PbtGXbpX7OFd7RbAUrVLunwW-OIqJ-lrzleR49-86yY",[517,522,527,528,533,540,546,551,556,560,565,571,576,582,587,592,598,604,610,616,622,628,634,640,646,652],{"path":518,"title":519,"description":520,"excerpt":473,"author":6,"date":471,"category":521,"localeGroup":493},"\u002Fguides\u002Fvelocity-proxy-docker-compose-itzg-mc-proxy","Set up Velocity and Paper with Docker Compose","Connect your proxy and server while keeping Paper ports isolated from the internet.","getting-started",{"path":523,"title":524,"description":525,"excerpt":473,"author":6,"date":471,"category":526,"localeGroup":494},"\u002Fguides\u002Fvelocity-modern-forwarding-paper-docker","Configure Velocity modern forwarding with Paper","Match forwarding settings, protect the shared secret, and block direct backend access.","security",{"path":490,"title":5,"description":472,"excerpt":473,"author":6,"date":471,"category":470,"localeGroup":487},{"path":529,"title":530,"description":531,"excerpt":473,"author":6,"date":471,"category":470,"localeGroup":532},"\u002Fguides\u002Fgeyser-floodgate-velocity-proxy-docker","Set up Geyser and Floodgate on Velocity with Docker","Install Geyser on the proxy and check UDP port 19132 and Bedrock player authentication.","geyser-floodgate-velocity-proxy",{"path":534,"title":535,"description":536,"excerpt":473,"author":6,"date":537,"category":538,"localeGroup":539},"\u002Fguides\u002Fupdate-minecraft-server-docker-compose-rollback","Update and roll back Minecraft with Docker Compose","Back up configuration and data before updating, then restore both together if you need to roll back.","2026-07-18","docker-operations","docker-minecraft-update-rollback",{"path":541,"title":542,"description":543,"excerpt":473,"author":6,"date":537,"category":544,"localeGroup":545},"\u002Fguides\u002Finstall-paper-plugins-docker-compose","Install Paper plugins with Docker Compose","Install plugins from a source directory or Modrinth and test updates before using them.","mods-plugins","paper-plugins-docker-compose",{"path":547,"title":548,"description":549,"excerpt":473,"author":6,"date":537,"category":544,"localeGroup":550},"\u002Fguides\u002Fmodrinth-modpack-itzg-minecraft-server-docker","Run Modrinth modpacks with Docker Compose","Pin the pack version and Java runtime, then match the server and client before the first start.","modrinth-modpack-docker",{"path":552,"title":553,"description":554,"excerpt":473,"author":6,"date":537,"category":538,"localeGroup":555},"\u002Fguides\u002Fmigrate-existing-minecraft-server-to-docker","Move an existing Minecraft server to Docker","Transfer your world, configuration, and extensions while keeping the original server available for rollback.","migrate-minecraft-server-to-docker",{"path":557,"title":558,"description":559,"excerpt":473,"author":6,"date":537,"category":538,"localeGroup":495},"\u002Fguides\u002Fminecraft-container-keeps-restarting-docker-compose","Find why your Minecraft container keeps restarting","Capture the container state and first startup error before interrupting the restart loop.",{"path":561,"title":562,"description":563,"excerpt":473,"author":6,"date":537,"category":544,"localeGroup":564},"\u002Fguides\u002Fcurseforge-modpack-itzg-minecraft-server-docker","Run CurseForge modpacks with Docker Compose","Configure AUTO_CURSEFORGE, pin the pack file, and handle the API key and manual downloads.","curseforge-modpack-docker",{"path":566,"title":567,"description":568,"excerpt":473,"author":6,"date":537,"category":569,"localeGroup":570},"\u002Fguides\u002Fminecraft-docker-exit-code-137-oomkilled","Minecraft exit code 137: check OOMKilled and memory limits","Exit code 137 means SIGKILL. Check OOMKilled, Java heap, and container limits to identify memory exhaustion.","performance","minecraft-docker-exit-137-oom",{"path":572,"title":573,"description":574,"excerpt":473,"author":6,"date":537,"category":526,"localeGroup":575},"\u002Fguides\u002Fsecure-minecraft-server-docker-compose","Secure a Minecraft server in Docker","Configure authentication, the whitelist, RCON access, file permissions, and published ports.","minecraft-docker-security-hardening",{"path":577,"title":578,"description":579,"excerpt":473,"author":6,"date":537,"category":580,"localeGroup":581},"\u002Fguides\u002Fset-up-automatic-minecraft-backups-docker-mc-backup","Set up automatic Minecraft backups with itzg\u002Fmc-backup","Add a backup container, set retention periods, and verify the resulting archives.","backups","docker-mc-backup-setup",{"path":583,"title":584,"description":585,"excerpt":473,"author":6,"date":537,"category":580,"localeGroup":586},"\u002Fguides\u002Frestore-minecraft-world-backup-docker","Restore a Minecraft world from a Docker backup","Stop the server, preserve the current data, and restore the selected backup.","docker-minecraft-restore-runbook",{"path":588,"title":589,"description":590,"excerpt":473,"author":6,"date":537,"category":580,"localeGroup":591},"\u002Fguides\u002Fhetzner-snapshots-minecraft-world-volumes","Hetzner snapshots and Minecraft data on volumes","Hetzner snapshots exclude attached volumes. Check where your world is stored and back it up separately.","hetzner-snapshots-volumes",{"path":593,"title":594,"description":595,"excerpt":473,"author":6,"date":596,"category":470,"localeGroup":597},"\u002Fguides\u002Fminecraft-crossplay-geyser-floodgate","Set up Geyser and Floodgate on Paper","Let Bedrock players join a Java server: install the plugins, open the UDP port, and test the connection.","2026-04-04","geyser-floodgate-crossplay",{"path":599,"title":600,"description":601,"excerpt":473,"author":6,"date":602,"category":521,"localeGroup":603},"\u002Fguides\u002Fpaper-vs-vanilla-vs-fabric-vs-forge","Vanilla, Paper, Fabric, or Forge: choose server software","Compare Vanilla, Paper, Fabric, Quilt, Forge, and NeoForge by the plugins and mods you need.","2026-04-03","minecraft-server-software-choice",{"path":605,"title":606,"description":607,"excerpt":473,"author":6,"date":608,"category":569,"localeGroup":609},"\u002Fguides\u002Fpaper-view-distance-vs-simulation-distance","Configure view distance and simulation distance in Paper","Compare viewing distance and active simulation, then measure their effect on server load.","2026-04-02","paper-view-distance-simulation-distance",{"path":611,"title":612,"description":613,"excerpt":473,"author":6,"date":614,"category":569,"localeGroup":615},"\u002Fguides\u002Fspark-profiler-paper-docker","Investigate lag with Spark Profiler in Paper and Docker","Record a profile while lag occurs and identify costly plugins, tasks, and server activity.","2026-04-01","spark-profiler-paper-docker",{"path":617,"title":618,"description":619,"excerpt":473,"author":6,"date":620,"category":569,"localeGroup":621},"\u002Fguides\u002Fminecraft-server-lag-tps-mspt-cant-keep-up","Investigate Minecraft lag: TPS, MSPT, and “Can’t keep up”","Check tick times and investigate CPU, chunk, entity, and plugin problems.","2026-03-31","minecraft-lag-tps-mspt",{"path":623,"title":624,"description":625,"excerpt":473,"author":6,"date":626,"category":538,"localeGroup":627},"\u002Fguides\u002Ffix-permission-denied-itzg-docker-minecraft-server","Fix permission denied errors for Minecraft in Docker","Match data-directory ownership to the container UID and GID.","2026-03-09","itzg-permission-denied",{"path":629,"title":630,"description":631,"excerpt":473,"author":6,"date":632,"category":538,"localeGroup":633},"\u002Fguides\u002Fadminister-docker-minecraft-server-rcon-console","Manage Minecraft in Docker with RCON and the console","Run server commands, manage the whitelist, and stop the server without exposing RCON publicly.","2026-03-08","docker-minecraft-rcon-console",{"path":635,"title":636,"description":637,"excerpt":473,"author":6,"date":638,"category":470,"localeGroup":639},"\u002Fguides\u002Fminecraft-domain-without-port-srv-record","Set up a Minecraft domain without a port using SRV","Connect a domain to your Java server and check its SRV and A\u002FAAAA records.","2026-03-07","minecraft-srv-record-domain",{"path":641,"title":642,"description":643,"excerpt":473,"author":6,"date":644,"category":470,"localeGroup":645},"\u002Fguides\u002Fopen-port-25565-minecraft-server-hetzner-linux","Open Minecraft port 25565 on Hetzner and Linux","Check Docker port publishing and firewalls when your server runs but players cannot connect.","2026-03-05","open-port-25565-hetzner-linux",{"path":647,"title":648,"description":649,"excerpt":473,"author":6,"date":650,"category":521,"localeGroup":651},"\u002Fguides\u002Fdetermining-correct-java-version-for-operating-minecraft-server","Find the Java version your Minecraft server needs","Match class-file errors to Java versions and choose the runtime for your server.","2025-01-31","java-version-minecraft-server",{"path":653,"title":654,"description":655,"excerpt":473,"author":6,"date":656,"category":521,"localeGroup":657},"\u002Fguides\u002Fminecraft-server-with-docker-on-hetzner-cloud","Set up a Minecraft server on Hetzner with Docker Compose","Set up a Java server on Hetzner Cloud: Debian, SSH access, Docker Compose, and the first server start.","2025-01-28","hetzner-docker-setup",[659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,653,617,611,605,599,593,534,541,547,552,557,647,561,566,572,518,523,490,529,641,635,629,623,577,583,588],"\u002Fde\u002Fguides\u002Fminecraft-server-with-docker-on-hetzner-cloud","\u002Fde\u002Fguides\u002Fminecraft-server-lag-tps-mspt-cant-keep-up","\u002Fde\u002Fguides\u002Fspark-profiler-paper-docker","\u002Fde\u002Fguides\u002Fpaper-view-distance-vs-simulation-distance","\u002Fde\u002Fguides\u002Fpaper-vs-vanilla-vs-fabric-vs-forge","\u002Fde\u002Fguides\u002Fminecraft-crossplay-geyser-floodgate","\u002Fde\u002Fguides\u002Fupdate-minecraft-server-docker-compose-rollback","\u002Fde\u002Fguides\u002Finstall-paper-plugins-docker-compose","\u002Fde\u002Fguides\u002Fmodrinth-modpack-itzg-minecraft-server-docker","\u002Fde\u002Fguides\u002Fmigrate-existing-minecraft-server-to-docker","\u002Fde\u002Fguides\u002Fminecraft-container-keeps-restarting-docker-compose","\u002Fde\u002Fguides\u002Fdetermining-correct-java-version-for-operating-minecraft-server","\u002Fde\u002Fguides\u002Fcurseforge-modpack-itzg-minecraft-server-docker","\u002Fde\u002Fguides\u002Fminecraft-docker-exit-code-137-oomkilled","\u002Fde\u002Fguides\u002Fsecure-minecraft-server-docker-compose","\u002Fde\u002Fguides\u002Fvelocity-proxy-docker-compose-itzg-mc-proxy","\u002Fde\u002Fguides\u002Fvelocity-modern-forwarding-paper-docker","\u002Fde\u002Fguides\u002Fvelocity-proxy-cannot-connect-backend-docker","\u002Fde\u002Fguides\u002Fgeyser-floodgate-velocity-proxy-docker","\u002Fde\u002Fguides\u002Fopen-port-25565-minecraft-server-hetzner-linux","\u002Fde\u002Fguides\u002Fminecraft-domain-without-port-srv-record","\u002Fde\u002Fguides\u002Fadminister-docker-minecraft-server-rcon-console","\u002Fde\u002Fguides\u002Ffix-permission-denied-itzg-docker-minecraft-server","\u002Fde\u002Fguides\u002Fset-up-automatic-minecraft-backups-docker-mc-backup","\u002Fde\u002Fguides\u002Frestore-minecraft-world-backup-docker","\u002Fde\u002Fguides\u002Fhetzner-snapshots-minecraft-world-volumes",1789248457338]