How to host a Minecraft server

Minecraft is far lighter than its reputation suggests. A handful of friends on a vanilla or Paper world runs comfortably in a few gigabytes of memory. What drives the requirement is not player count — it is view distance, how much of the world has been explored, and how many mods you are running. A heavily modded pack for six people will want considerably more than a plain server for twenty.
How to install it
- Install Java first. Recent Minecraft versions need a current Java release; older versions need an older one. Check which your version wants before anything else.
- Download your chosen server software. Vanilla from Minecraft’s own site, Paper from PaperMC, Fabric or Forge from their installers. Make this decision now, not later.
- Put it in its own empty folder. The server scatters files on first run, and untangling it from other things later is miserable.
- Run it once and let it fail. It will stop immediately and write out its files. This is expected.
- Accept the licence. Open eula.txt and change false to true. The server will not start until you do.
- Run it again and wait for the world to generate.
How to configure it
| Setting | What it does | Sensible value |
|---|---|---|
| view-distance | How far players can see. Accepts 1–32, but going much above 10–12 hurts noticeably. | 8–10 |
| simulation-distance | How far the world actually runs — mobs, crops, redstone. Separate from what is visible, and usually the better one to lower first. | 4–6 |
| online-mode | Verifies players against Mojang. Turning it off means anyone can join as any username. | true |
| max-players | Hard cap. Set it before you share the address. | as needed |
| Memory | Not in this file — it is the -Xms/-Xmx flags on the java command. | 4–6 GB |
- view-distance is your single biggest performance lever. Lowering it helps more than any other change.
- simulation-distance is separate, and often the better one to reduce first — it controls what is actively running rather than what is merely visible.
- Leave online-mode on unless you know exactly why you are turning it off. Off means anyone can join claiming any username.
- Set max-players and white-list before you tell anyone the address.
- Memory is not in this file. It is set with Java flags in whatever script starts the server.
Giving the server as much memory as the machine has. Java periodically tidies up the memory it has been given, and the more you hand it, the longer that pause takes. Those pauses are the lag spikes. Give it what it needs and a little headroom — not everything you own.
Worth knowing
- Paper for plugins, Fabric or Forge for mods. Plugins are server-side only, so players join with an unmodified game. Mods must be installed by every player, matching exactly.
- Your world is a folder. Copy it before any major change — almost every disaster in Minecraft hosting is recoverable if you did.
Written from experience running these servers. If something here no longer matches what you are seeing, tell us and we will recheck it.
Building GameDash at Schokker IT — the game server control panel we always wished existed. Writes about infrastructure automation, the SDK and running game servers at scale.