[{"data":1,"prerenderedAt":604},["ShallowReactive",2],{"\u002Fguides\u002Fvelocity-modern-forwarding-paper-docker\u002F":3,"guides:en":435,"published-guide-paths":577},{"id":4,"title":5,"author":6,"body":7,"category":392,"date":393,"description":394,"excerpt":395,"extension":396,"faq":397,"featured":407,"featuredOrder":395,"indexOrder":408,"localeGroup":409,"meta":410,"navigation":411,"path":412,"primaryTool":413,"published":411,"related":414,"seo":418,"slug":419,"sources":420,"stem":433,"updated":393,"__hash__":434},"guides\u002Fguides\u002F24.velocity-modern-forwarding-paper-docker.md","Configure Velocity Modern Forwarding with Paper in Docker","setupmc.com Team",{"type":8,"value":9,"toc":381},"minimark",[10,15,24,27,36,40,43,53,60,68,79,86,90,97,104,112,117,125,143,149,155,158,162,169,175,182,188,191,194,198,201,207,210,229,232,236,239,260,263,267,354,358],[11,12,14],"h2",{"id":13},"why-forwarding-needs-a-complete-security-design","Why forwarding needs a complete security design",[16,17,18,19,23],"p",{},"Velocity authenticates the public player connection. Paper runs with ",[20,21,22],"code",{},"online-mode=false"," so it accepts the identity forwarded by the proxy. That backend setting is dangerous by itself: if a player can connect directly, they may be able to impersonate another account.",[16,25,26],{},"Modern forwarding protects the forwarded identity with a shared secret. PaperMC still recommends a firewall or equivalent network isolation because the secret is a second layer, not a replacement for blocking the backend.",[16,28,29,30,35],{},"Start with the ",[31,32,34],"a",{"href":33},"\u002Fguides\u002Fvelocity-proxy-docker-compose-itzg-mc-proxy\u002F","Velocity Docker Compose setup"," if proxy and backend are not running yet.",[11,37,39],{"id":38},"required-state-on-the-proxy","Required state on the proxy",[16,41,42],{},"Stop the stack before editing configuration:",[44,45,51],"pre",{"className":46,"code":48,"language":49,"meta":50},[47],"language-bash","docker compose down\n","bash","",[20,52,48],{"__ignoreMap":50},[16,54,55,56,59],{},"In ",[20,57,58],{},"proxy\u002Fvelocity.toml",", configure:",[44,61,66],{"className":62,"code":64,"language":65,"meta":50},[63],"language-toml","online-mode = true\nplayer-info-forwarding-mode = \"modern\"\nforwarding-secret-file = \"forwarding.secret\"\n","toml",[20,67,64],{"__ignoreMap":50},[16,69,70,71,74,75,78],{},"Velocity's ",[20,72,73],{},"online-mode=true"," keeps Mojang\u002FMicrosoft account authentication at the edge. The ",[20,76,77],{},"modern"," format is intended for Minecraft 1.13 and newer and is supported directly by current Paper releases.",[16,80,81,82,85],{},"Read the value from ",[20,83,84],{},"proxy\u002Fforwarding.secret"," without putting it into a command line, Git commit, screenshot, or support message. If the file does not exist, start Velocity once, let it generate the configuration, and stop it again.",[11,87,89],{"id":88},"required-state-on-paper","Required state on Paper",[16,91,92,93,96],{},"The backend must already have started once so ",[20,94,95],{},"lobby\u002Fconfig\u002Fpaper-global.yml"," exists.",[16,98,99,100,103],{},"First, set this in ",[20,101,102],{},"lobby\u002Fserver.properties",":",[44,105,110],{"className":106,"code":108,"language":109,"meta":50},[107],"language-properties","online-mode=false\n","properties",[20,111,108],{"__ignoreMap":50},[16,113,114,115,103],{},"Then edit ",[20,116,95],{},[44,118,123],{"className":119,"code":121,"language":122,"meta":50},[120],"language-yaml","proxies:\n  velocity:\n    enabled: true\n    online-mode: true\n    secret: \"replace-with-the-exact-forwarding-secret\"\n","yaml",[20,124,121],{"__ignoreMap":50},[16,126,127,128,131,132,135,136,138,139,142],{},"The Paper ",[20,129,130],{},"online-mode"," value under ",[20,133,134],{},"proxies.velocity"," must match the proxy's ",[20,137,130],{},". It does not replace ",[20,140,141],{},"server.properties","; the two fields describe different sides of the forwarded authentication flow.",[16,144,145,146,103],{},"If you previously used legacy BungeeCord forwarding, disable it in ",[20,147,148],{},"spigot.yml",[44,150,153],{"className":151,"code":152,"language":122,"meta":50},[120],"settings:\n  bungeecord: false\n",[20,154,152],{"__ignoreMap":50},[16,156,157],{},"Do not enable modern and legacy forwarding together. Velocity supports one forwarding mode for the connection path.",[11,159,161],{"id":160},"keep-the-backend-private","Keep the backend private",[16,163,164,165,168],{},"For backends in the same Compose project, omit ",[20,166,167],{},"ports"," entirely:",[44,170,173],{"className":171,"code":172,"language":122,"meta":50},[120],"services:\n  proxy:\n    ports:\n      - \"25565:25577\"\n    networks: [minecraft]\n\n  lobby:\n    networks: [minecraft]\n\nnetworks:\n  minecraft: {}\n",[20,174,172],{"__ignoreMap":50},[16,176,177,178,181],{},"Velocity reaches ",[20,179,180],{},"lobby:25565"," inside Docker. The Paper service does not need a host port. Verify the resolved configuration instead of trusting indentation:",[44,183,186],{"className":184,"code":185,"language":49,"meta":50},[47],"docker compose config\ndocker compose port proxy 25577\ndocker compose port lobby 25565\n",[20,187,185],{"__ignoreMap":50},[16,189,190],{},"The first command should show the proxy mapping. The last command should show no published backend mapping.",[16,192,193],{},"If proxy and backend live on different physical hosts, a shared Compose network does not exist. Restrict the Paper port at the host\u002Fprovider firewall to the proxy source address or carry the traffic through a private encrypted network. Never expose an offline-mode backend to the general internet.",[11,195,197],{"id":196},"restart-and-verify-identity-forwarding","Restart and verify identity forwarding",[16,199,200],{},"Start the network and watch both log streams:",[44,202,205],{"className":203,"code":204,"language":49,"meta":50},[47],"docker compose up -d\ndocker compose logs -f proxy lobby\n",[20,206,204],{"__ignoreMap":50},[16,208,209],{},"Join through the public proxy address. A successful test has all of these properties:",[211,212,213,217,220,223,226],"ul",{},[214,215,216],"li",{},"Velocity authenticates the Java account.",[214,218,219],{},"Paper accepts the connection without a forwarding error.",[214,221,222],{},"The backend sees the player's real UUID, skin, and address information supplied by Velocity.",[214,224,225],{},"A direct connection to the backend host port is impossible.",[214,227,228],{},"Restarting both containers does not change the secret or disable forwarding.",[16,230,231],{},"Test with a non-operator account before considering the network ready. An operator login can hide permission and routing mistakes.",[11,233,235],{"id":234},"rotate-an-exposed-secret","Rotate an exposed secret",[16,237,238],{},"If the secret appeared in Git, logs, chat, or a screenshot, assume it is compromised:",[240,241,242,245,251,254,257],"ol",{},[214,243,244],{},"Stop Velocity and every backend.",[214,246,247,248,250],{},"Replace ",[20,249,84],{}," with a new long random value.",[214,252,253],{},"Put the same value into every backend's Paper configuration.",[214,255,256],{},"Confirm backend ports are still private.",[214,258,259],{},"Restart the entire network and test a real login.",[16,261,262],{},"Changing only one side causes intentional login failures. Rotate as one controlled operation.",[11,264,266],{"id":265},"troubleshooting","Troubleshooting",[268,269,270,286],"table",{},[271,272,273],"thead",{},[274,275,276,280,283],"tr",{},[277,278,279],"th",{},"Message or symptom",[277,281,282],{},"Cause",[277,284,285],{},"Fix",[287,288,289,306,317,328,339],"tbody",{},[274,290,291,297,300],{},[292,293,294],"td",{},[20,295,296],{},"This server requires you to connect with Velocity",[292,298,299],{},"Paper expects modern forwarding but Velocity does not send it",[292,301,302,303,305],{},"Set proxy mode to ",[20,304,77],{}," and restart both sides",[274,307,308,311,314],{},[292,309,310],{},"Login fails after secret rotation",[292,312,313],{},"Proxy and Paper secrets differ",[292,315,316],{},"Copy the exact new value to every backend",[274,318,319,322,325],{},[292,320,321],{},"UUIDs or skins are wrong",[292,323,324],{},"Legacy\u002Fno forwarding is still active",[292,326,327],{},"Disable Bungee forwarding and verify the modern configuration",[274,329,330,333,336],{},[292,331,332],{},"Direct backend login succeeds",[292,334,335],{},"Host port or firewall still exposes Paper",[292,337,338],{},"Remove mapping and close external access immediately",[274,340,341,344,347],{},[292,342,343],{},"Proxy cannot reach Paper at all",[292,345,346],{},"Docker service\u002Fnetwork\u002Fport mismatch",[292,348,349,350],{},"Use the ",[31,351,353],{"href":352},"\u002Fguides\u002Fvelocity-proxy-cannot-connect-backend-docker\u002F","backend connection runbook",[11,355,357],{"id":356},"next-steps","Next steps",[211,359,360,367,374],{},[214,361,362,363,366],{},"Diagnose routing with ",[31,364,365],{"href":352},"Velocity backend connection checks",".",[214,368,369,370,366],{},"Add crossplay using ",[31,371,373],{"href":372},"\u002Fguides\u002Fgeyser-floodgate-velocity-proxy-docker\u002F","Geyser and Floodgate on the proxy",[214,375,376,377,366],{},"Apply the broader ",[31,378,380],{"href":379},"\u002Fguides\u002Fsecure-minecraft-server-docker-compose\u002F","Docker Minecraft hardening baseline",{"title":50,"searchDepth":382,"depth":382,"links":383},2,[384,385,386,387,388,389,390,391],{"id":13,"depth":382,"text":14},{"id":38,"depth":382,"text":39},{"id":88,"depth":382,"text":89},{"id":160,"depth":382,"text":161},{"id":196,"depth":382,"text":197},{"id":234,"depth":382,"text":235},{"id":265,"depth":382,"text":266},{"id":356,"depth":382,"text":357},"security","2026-08-01","Match Velocity and Paper forwarding settings, protect the forwarding secret, block direct backend access, and verify that player identity reaches Paper safely.",null,"md",[398,401,404],{"question":399,"answer":400},"Is Velocity modern forwarding a replacement for a firewall?","No. Velocity describes modern forwarding as a second layer of protection. Backend servers still need to be unreachable from untrusted networks.",{"question":402,"answer":403},"Should online-mode be true or false on Paper behind Velocity?","Set server.properties online-mode to false on the Paper backend because Velocity performs authentication. Keep online-mode true on Velocity and set proxies.velocity.online-mode on Paper to match the proxy.",{"question":405,"answer":406},"Can every backend use the same forwarding secret?","Yes, one secret can be shared across a trusted Velocity network. Treat it as a credential, restrict file access, and rotate it if it was committed, pasted, or otherwise exposed.",false,"2","velocity-modern-forwarding-paper",{},true,"\u002Fguides\u002Fvelocity-modern-forwarding-paper-docker","proxy-configurator",[415,416,417],"velocity-proxy-docker-compose","velocity-backend-unreachable-docker","minecraft-docker-security-hardening",{"title":5,"description":394},"velocity-modern-forwarding-paper-docker",[421,424,427,430],{"title":422,"url":423},"Velocity player information forwarding","https:\u002F\u002Fdocs.papermc.io\u002Fvelocity\u002Fplayer-information-forwarding\u002F",{"title":425,"url":426},"Velocity server security","https:\u002F\u002Fdocs.papermc.io\u002Fvelocity\u002Fsecurity\u002F",{"title":428,"url":429},"Velocity configuration reference","https:\u002F\u002Fdocs.papermc.io\u002Fvelocity\u002Fconfiguration\u002F",{"title":431,"url":432},"Docker Compose networking","https:\u002F\u002Fdocs.docker.com\u002Fcompose\u002Fhow-tos\u002Fnetworking\u002F","guides\u002F24.velocity-modern-forwarding-paper-docker","Z_JTfXyZfjmrlUUMLYasFJo-ukyzO1sKRQOqmdFkDWM",[436,441,442,447,452,459,465,470,475,480,485,491,495,501,506,511,517,523,529,535,541,547,553,559,565,571],{"path":437,"title":438,"description":439,"excerpt":395,"author":6,"date":393,"category":440,"localeGroup":415},"\u002Fguides\u002Fvelocity-proxy-docker-compose-itzg-mc-proxy","Set Up a Velocity Proxy with Docker Compose and itzg\u002Fmc-proxy","Run Velocity and Paper together with Docker Compose, route players through the proxy, keep backend ports private, and validate the complete connection path.","getting-started",{"path":412,"title":5,"description":394,"excerpt":395,"author":6,"date":393,"category":392,"localeGroup":409},{"path":443,"title":444,"description":445,"excerpt":395,"author":6,"date":393,"category":446,"localeGroup":416},"\u002Fguides\u002Fvelocity-proxy-cannot-connect-backend-docker","Velocity Proxy Cannot Connect to a Backend in Docker: A Runbook","Fix Velocity backend connection failures by checking container state, Docker networks, service-name DNS, the container port, Paper readiness, and forwarding separately.","networking",{"path":448,"title":449,"description":450,"excerpt":395,"author":6,"date":393,"category":446,"localeGroup":451},"\u002Fguides\u002Fgeyser-floodgate-velocity-proxy-docker","Run Geyser and Floodgate on a Velocity Proxy with Docker","Add Bedrock crossplay at the Velocity edge, publish UDP 19132 correctly, configure Floodgate authentication, and keep Geyser off the individual backends.","geyser-floodgate-velocity-proxy",{"path":453,"title":454,"description":455,"excerpt":395,"author":6,"date":456,"category":457,"localeGroup":458},"\u002Fguides\u002Fupdate-minecraft-server-docker-compose-rollback","Update a Minecraft Server with Docker Compose and Roll Back Safely","Update an itzg\u002Fminecraft-server deployment without gambling with your world. This runbook covers version pinning, a cold backup, validation, and a real rollback path.","2026-07-18","docker-operations","docker-minecraft-update-rollback",{"path":460,"title":461,"description":462,"excerpt":395,"author":6,"date":456,"category":463,"localeGroup":464},"\u002Fguides\u002Finstall-paper-plugins-docker-compose","Install and Update Paper Plugins with Docker Compose","Install Paper plugins reproducibly with itzg\u002Fminecraft-server. Compare a read-only \u002Fplugins source mount with managed Modrinth downloads, then validate every plugin after restart.","mods-plugins","paper-plugins-docker-compose",{"path":466,"title":467,"description":468,"excerpt":395,"author":6,"date":456,"category":463,"localeGroup":469},"\u002Fguides\u002Fmodrinth-modpack-itzg-minecraft-server-docker","Run a Modrinth Modpack with itzg\u002Fminecraft-server and Docker Compose","Deploy a server-compatible Modrinth modpack with Docker Compose, pin the pack version, match Java and client requirements, and validate the first start safely.","modrinth-modpack-docker",{"path":471,"title":472,"description":473,"excerpt":395,"author":6,"date":456,"category":457,"localeGroup":474},"\u002Fguides\u002Fmigrate-existing-minecraft-server-to-docker","Migrate an Existing Minecraft Server or World to Docker","Move an existing Minecraft server into itzg\u002Fminecraft-server without mixing migration and upgrades. This runbook covers world-only imports, full data moves, permissions, and rollback.","migrate-minecraft-server-to-docker",{"path":476,"title":477,"description":478,"excerpt":395,"author":6,"date":456,"category":457,"localeGroup":479},"\u002Fguides\u002Fminecraft-container-keeps-restarting-docker-compose","Minecraft Container Keeps Restarting: Diagnose the Docker Compose Loop","Find out why an itzg\u002Fminecraft-server container repeatedly restarts. This runbook preserves the first error, separates exited from unhealthy containers, and fixes the actual cause.","docker-minecraft-restart-loop",{"path":481,"title":482,"description":483,"excerpt":395,"author":6,"date":456,"category":463,"localeGroup":484},"\u002Fguides\u002Fcurseforge-modpack-itzg-minecraft-server-docker","Run a CurseForge Modpack with itzg\u002Fminecraft-server and Docker Compose","Deploy a CurseForge modpack with AUTO_CURSEFORGE, pin its file ID, protect the API key, handle manual downloads, and validate loader and client compatibility.","curseforge-modpack-docker",{"path":486,"title":487,"description":488,"excerpt":395,"author":6,"date":456,"category":489,"localeGroup":490},"\u002Fguides\u002Fminecraft-docker-exit-code-137-oomkilled","Minecraft Docker Exit Code 137: Diagnose OOMKilled Correctly","Exit code 137 means SIGKILL, not automatically an out-of-memory event. Confirm Docker OOMKilled state, compare JVM heap with container limits, and leave non-heap headroom.","performance","minecraft-docker-exit-137-oom",{"path":492,"title":493,"description":494,"excerpt":395,"author":6,"date":456,"category":392,"localeGroup":417},"\u002Fguides\u002Fsecure-minecraft-server-docker-compose","Secure a Minecraft Server with Docker Compose: Practical Hardening","Harden an itzg\u002Fminecraft-server deployment with online mode, a whitelist, file-based RCON secrets, a non-root container, reduced capabilities, limited ports, and trusted plugins.",{"path":496,"title":497,"description":498,"excerpt":395,"author":6,"date":456,"category":499,"localeGroup":500},"\u002Fguides\u002Fset-up-automatic-minecraft-backups-docker-mc-backup","Set Up Automatic Minecraft Backups with docker-mc-backup","Back up your Minecraft world automatically with itzg\u002Fmc-backup. This guide shows a safe sidecar setup, retention defaults, and how to validate that backups really work.","backups","docker-mc-backup-setup",{"path":502,"title":503,"description":504,"excerpt":395,"author":6,"date":456,"category":499,"localeGroup":505},"\u002Fguides\u002Frestore-minecraft-world-backup-docker","Restore a Minecraft World from Backup in Docker: A Safe Runbook","A backup is only useful if you can restore it safely. This guide shows how to restore a Minecraft world in Docker, avoid overwriting live data accidentally, and validate the result before reopening the server.","docker-minecraft-restore-runbook",{"path":507,"title":508,"description":509,"excerpt":395,"author":6,"date":456,"category":499,"localeGroup":510},"\u002Fguides\u002Fhetzner-snapshots-minecraft-world-volumes","Why Hetzner Snapshots Do Not Fully Protect Your Minecraft World","Hetzner Cloud Backups and Snapshots are useful, but they do not include attached Volumes. This guide explains the risk, the operational consequences, and the safer backup pattern for Minecraft.","hetzner-snapshots-volumes",{"path":512,"title":513,"description":514,"excerpt":395,"author":6,"date":515,"category":446,"localeGroup":516},"\u002Fguides\u002Fminecraft-crossplay-geyser-floodgate","Set Up Java and Bedrock Crossplay with Geyser and Floodgate","Want Bedrock players on phones or consoles to join your Java server? This guide shows a direct Paper-based Geyser and Floodgate setup without introducing a separate proxy layer.","2026-04-04","geyser-floodgate-crossplay",{"path":518,"title":519,"description":520,"excerpt":395,"author":6,"date":521,"category":440,"localeGroup":522},"\u002Fguides\u002Fpaper-vs-vanilla-vs-fabric-vs-forge","Paper vs Vanilla vs Fabric vs Forge: Which Minecraft Server Software Should You Choose?","Choosing the wrong server software creates avoidable pain later. This guide compares Vanilla, Paper, Fabric, Quilt, Forge, and NeoForge based on plugins, mods, performance, and operational complexity.","2026-04-03","minecraft-server-software-choice",{"path":524,"title":525,"description":526,"excerpt":395,"author":6,"date":527,"category":489,"localeGroup":528},"\u002Fguides\u002Fpaper-view-distance-vs-simulation-distance","View Distance vs Simulation Distance: Safe Starting Values for Paper","Paper exposes view-distance and simulation-distance separately, which makes them one of the safest first levers for performance tuning. This guide explains what each setting changes and which starting values are sensible.","2026-04-02","paper-view-distance-simulation-distance",{"path":530,"title":531,"description":532,"excerpt":395,"author":6,"date":533,"category":489,"localeGroup":534},"\u002Fguides\u002Fspark-profiler-paper-docker","Use Spark Profiler to Find Minecraft Lag in Paper and Docker","Paper bundles Spark starting with 1.21, which makes it the preferred profiler for diagnosing lag. This guide shows how to capture a useful report and how to read the first findings without guesswork.","2026-04-01","spark-profiler-paper-docker",{"path":536,"title":537,"description":538,"excerpt":395,"author":6,"date":539,"category":489,"localeGroup":540},"\u002Fguides\u002Fminecraft-server-lag-tps-mspt-cant-keep-up","Minecraft Server Lag Explained: TPS, MSPT, and 'Can’t Keep Up'","This guide explains what TPS and MSPT actually mean, why “Can’t keep up” appears in the console, and which checks help you separate CPU, chunk, entity, and plugin problems quickly.","2026-03-31","minecraft-lag-tps-mspt",{"path":542,"title":543,"description":544,"excerpt":395,"author":6,"date":545,"category":457,"localeGroup":546},"\u002Fguides\u002Ffix-permission-denied-itzg-docker-minecraft-server","Fix Permission Denied in itzg\u002Fminecraft-server with UID\u002FGID and Bind Mounts","Seeing permission errors in \u002Fdata or files that Docker cannot write? This guide explains why itzg\u002Fminecraft-server defaults to UID 1000:GID 1000 and how to fix ownership safely.","2026-03-09","itzg-permission-denied",{"path":548,"title":549,"description":550,"excerpt":395,"author":6,"date":551,"category":457,"localeGroup":552},"\u002Fguides\u002Fadminister-docker-minecraft-server-rcon-console","Administer a Docker Minecraft Server Safely with RCON and Console Access","Need to op a player, manage the whitelist, or stop the server cleanly? This guide shows how to use RCON and interactive console access with itzg\u002Fminecraft-server without exposing extra risk.","2026-03-08","docker-minecraft-rcon-console",{"path":554,"title":555,"description":556,"excerpt":395,"author":6,"date":557,"category":446,"localeGroup":558},"\u002Fguides\u002Fminecraft-domain-without-port-srv-record","Minecraft Domain Without a Port: How to Set Up an SRV Record","Want players to join via example.com instead of an IP and port? This guide shows how SRV records work for Minecraft Java Edition and how to configure them correctly.","2026-03-07","minecraft-srv-record-domain",{"path":560,"title":561,"description":562,"excerpt":395,"author":6,"date":563,"category":446,"localeGroup":564},"\u002Fguides\u002Fopen-port-25565-minecraft-server-hetzner-linux","How to Open Port 25565 for a Minecraft Server on Hetzner and Linux","Players cannot join even though the container is running? This guide checks Docker port publishing, the Linux firewall path, and the Hetzner Cloud Firewall without relying on misleading UFW assumptions.","2026-03-05","open-port-25565-hetzner-linux",{"path":566,"title":567,"description":568,"excerpt":395,"author":6,"date":569,"category":440,"localeGroup":570},"\u002Fguides\u002Fdetermining-correct-java-version-for-operating-minecraft-server","Determining the Correct Java Version for Operating a Minecraft Server","If you want to set up a Minecraft server, you may encounter an error message related to the Java version when starting the server. In this article, you will learn how to determine the correct Java version for your Minecraft server.","2025-01-31","java-version-minecraft-server",{"path":572,"title":573,"description":574,"excerpt":395,"author":6,"date":575,"category":440,"localeGroup":576},"\u002Fguides\u002Fminecraft-server-with-docker-on-hetzner-cloud","Setting up a Minecraft Server on a Hetzner Cloud Server with Docker Compose","In this article, we will show you how to set up a server for Minecraft: Java Edition on a Hetzner Cloud server. We will go through the steps of creating the cloud server, installing Debian, setting up an SSH key, and configuring Docker Compose for easy server management.","2025-01-28","hetzner-docker-setup",[578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,572,536,530,524,518,512,453,460,466,471,476,566,481,486,492,437,412,443,448,560,554,548,542,496,502,507],"\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",1786636763613]