8 ms·
Anyone got any advice for a techy dad with no (zero) Minecraft experience who wants to set up a Minecraft server for the family in 2026? Kids right now are play
by velcrovan 2mo ago
Anyone got any advice for a techy dad with no (zero) Minecraft experience who wants to set up a Minecraft server for the family in 2026? Kids right now are playing on their iPads, and (sometimes) old macbooks/windows PCs.
- preisschild 2mo agoitzg has OCI container images and kubernetes helm charts https://itzg.github.io/docker-minecraft-docs/ https://itzg.github.io/docker-minecraft-docs/
- bombcar 2mo agoNo joke serious - play GTNH. You can turn off the mobs if needed and the quest book is phenomenal and the feeling of accomplishment is real. And you can stay in steam forever if you wanted.
- Guvante 2mo agoMinecraft realms aren't as powerful as a server but if you are doing Bedrock to support iPads then it is certainly the easiest way to do it.
- himata4113 2mo agohttps://pufferfish.host/ https://pufferfish.host/ they have the most powerful and easy to use panel.
- VCFundedGenYer 2mo agoThe edition of Minecraft on phones/tablets/etc is more locked down and limited than Java, so unfortunately your options might be somewhat limited (though not impossible). I have run a Docker Minecraft Server (itzg/docker-minecraft-server) for years and it's been rock solid. Best part is not having to install a lot of dependencies, the image just does it all. I think they also have a Bedrock Edition server but I never got it working right (see above). You'd need everyone to run the Java Edition on Windows/Mac/Linux systems if you want to do it with the least amount of pain. Otherwise, people are just paying for "Realms" which are hosted servers.
- hnlmorg 2mo agoBedrock has always worked fine for me. That’s how I’ve self hosed for my kids.
- echoangle 2mo agoIf you want to selfhost and use docker for Java edition, this is the easiest way: https://github.com/itzg/docker-minecraft-server https://github.com/itzg/docker-minecraft-server There’s also a version for bedrock (the version that’s supported on mobile devices).
- speed_spread 2mo agoI used a Docker image. Good enough as is for LAN usage. I assume it could be exposed online with a Cloudflare tunnel but I wouldnt trust it to not be hacked. Docker may also make it harder to customize (install mods).
- poly2it 2mo agoAre all of your family playing on Bedrock edition? There is a version split between console editions (plus some Windows users) and the original Java edition, with most of the (verbal?) online community playing on the latter. If you are not all playing on the same edition, you can use something called GeyserMC (https://geysermc.org/ https://geysermc.org/) to allow Bedrock players to join your Java server. Modding your server can greatly improve your server performance. Java is the platform with the best modding support. The modding APIs are however community built, due to historical and upsteram reasons. The subjectively best API for development (in my opinion) is Fabric (https://fabricmc.net/ https://fabricmc.net/), but many older mods have only targetted Forge. Due to a split in the Forge development team, this API was recently superceded by NeoForge (https://neoforged.net/ https://neoforged.net/). Most relevant mods support both Fabric and NeoForge. To explore mods, I would recommend using Modrinth. It has a pleasant and powerful interface, and links to source code on open source mods. https://modrinth.com/ https://modrinth.com/ Here is a search filter for an overview of server-side optimisation mods: https://modrinth.com/discover/mods?g=categories:fabric&l=open_source:true&e=server&f=categories:optimization https://modrinth.com/discover/mods?g=categories:fabric&l=ope... To set up your Minecraft server, I would recommend NixOS (https://nixos.org https://nixos.org) for devops with nix-minecraft for server configuration: https://github.com/Infinidoge/nix-minecraft https://github.com/Infinidoge/nix-minecraft Feel free to ask clarifying questions if you have any, I might have written this somewhat compactly!
- harrigan 2mo agoMinecraft servers are resource hogs even when idle. Enable the built-in idle server shutdown (IDLE_SERVER=true). It automatically stops the server after a few minutes with no players and starts it again when needed. It's not enabled by default.
- ChoosesBarbecue 2mo agoI'm struggling to find documentation on `IDLE_SERVER`, do you know of any? The only place I see it documented is on ArchWiki [0], but I don't know if that is an Arch distribution specific feature. I do see `pause-when-empty-seconds` [1] when looking at the wiki, which seems the closest, although I can't find doc on what "paused" means (this is the closest [2]). Looks like a fairly new feature (2024), but it's neat they've thought about it. [0]: https://wiki.archlinux.org/title/Minecraft/Java_Edition_server#Tweaking https://wiki.archlinux.org/title/Minecraft/Java_Edition_serv... [1]: https://minecraft.wiki/w/Server.properties https://minecraft.wiki/w/Server.properties [2]: https://www.reddit.com/r/admincraft/comments/1k330eg/what_happens_when_a_server_pauses/mnz9sri/ https://www.reddit.com/r/admincraft/comments/1k330eg/what_ha...
- syrrim 2mo ago> I don't know if that is an Arch distribution specific feature. That's unlikely for two reasons, first because minecraft is closed source, and second because arch packages usually follow upstream very closely.
- ChoosesBarbecue 2mo agoBased on my read of the `minecraft-server` package [0], I think it is using a management script wrapper around the raw Minecraft JAR [1], which implements the aforementioned idle functionality [2]. [0]: https://aur.archlinux.org/cgit/aur.git/about/?h=minecraft-server https://aur.archlinux.org/cgit/aur.git/about/?h=minecraft-se... [1]: https://github.com/Edenhofer/minecraft-server https://github.com/Edenhofer/minecraft-server [2]: https://github.com/Edenhofer/minecraft-server/blob/421ff0ff3302f746dcad95b0c90c22c4f904a286/minecraftd.sh.in#L108-L165 https://github.com/Edenhofer/minecraft-server/blob/421ff0ff3...
- AkBKukU 2mo agoMinecraft comes in two flavors, Java and Bedrock. All of the mobile, console ports, and windows store versions are based on bedrock. Java is the one you download directly from the website. Bedrock isn't really about custom hosted servers, but there is a way. You can run a standard Java Minecraft server however you like, and then you can wrap it to also work with the Bedrock using Gyser[1] which will protocol translate it on the fly. It can require some workarounds on the more restrictive bedrock clients but it does work. That will let you setup and control the server from Java which has more options available. [1] https://geysermc.org/ https://geysermc.org/
- tialaramex 2mo agoGeyser sounds very interesting especially if you know some or all players wouldn't be willing or perhaps able to play Java Minecraft and so they have to run Bedrock, but some would play Java and they'd enjoy being together. Java Minecraft is just a better toy, I'm not altogether sure it's a better game, depending on how you define game, but it's a better toy because it's so flexible. I assume Geyser can't magically donate much of that flexibility to a Bedrock client, but if the players can co-exist then that's a boon in itself.
- augusto-moura 2mo agoAside from being more flexible they are mostly the same game. The original excuse for bedrock was that Java was slow and a native game would render much better, it was also easier to put shaders in a a native codebase. But Java edition is pretty performant nowadays and computers also got much more stronger than the game became heavier
- Philip-J-Fry 2mo agoAs far as I can remember the origins of Bedrock are the original console releases which couldn't ship a JVM. So a whole new codebase was developed, and ultimately it was more performant as it had to run on 7th gen consoles.
- cogogo 2mo agoI just run the server off of the fastest laptop and one of them also uses that machine to play and lock it all down with tailscale. Honestly probably not worth the effort when the java edition allows them to play together over the wifi network out of the box. Have not found a solution I like to open up to other kids at school.
- madduci 2mo agoI run the itzg Docker Image behind a Wireguard VPN, all hosted on an embedded board (a armbian powered Radxa 12L with 16 GB Ram). So far so good, we have an offline server, so even if the Microsoft Server is down, we can play (we use PolyMC on PC with offline accounts as well, for the same reason). By default, new users are in "spectator" mode, so they can't do anything without an activation from admin. Friends get Wireguard QR codes, periodically we rotate them.
- abstractbill 2mo agoI've been admining our family minecraft servers for about 5 years, and just handed off that job to my 12 year old daughter who now knows more than enough of the linux command-line to do it. I thoroughly recommend it, it's been great! There are many ways to get it done. What worked best for us was choosing java over bedrock, renting a cheap linux vps, and writing some very simple shell scripts for starting, stopping, changing worlds, etc. Happy to talk you through anything you get stuck on!
- AussieWog93 2mo agoGenuinely, install Ubuntu Server Edition into an old computer, set up SSH then tell Claude Code the account and IP for login. You can ask if to set up damn near anything you want and it'll do it. If you're using a laptop make sure it disables all of the sleep on lid close stuff, as well as other laptop-specific power optimisations. A VPS would work too if you want something always available with a datacentre network connection.
- skipkey 2mo agoAbsolutely this. I had installed wekan for a home chores kanban board on a $5 vps and had spent several hours trying to get the proxy working to make it externally reachable, and then I did this. Well, I used grok build to evaluate it, but I just told it where to ssh, and in about 10 minutes it was working, security was configured properly, backups were set up, etc. all of those post install things that I might never have gotten around to for a simple home setup.
- nkrisc 2mo agoI run a docker image with the Java server and GeyserMC to allow Bedrock clients to connect to it so my son can play from my iPad while I use my computer. If they’re playing from MacOS/Windows then the GeyserMC layer isn’t necessary as they can run the Java client.
- Velocifyer 2mo agoGo to https://minecraft.wiki/w/Tutorial:Setting_up_a_Java_Edition_server https://minecraft.wiki/w/Tutorial:Setting_up_a_Java_Edition_... for how to create a vanilla server for Minecraft Java edition (which is the best version, but is only on Windows and MacOS and Linux, unlike the significantly inferrior bedrock edition, which is way buggier but is avalible elsewhere). If you need more performance, install [fabric](https://fabricmc.net/ https://fabricmc.net/) and then install [lithium](https://modrinth.com/mod/lithium https://modrinth.com/mod/lithium), but do not use mods like paper or spigot or purpur as they will mess up farms.
- pjmlp 2mo agoAnd less capable as one is limited by the official extension points, instead of the anything goes with bytecode manipulation.
- Velocifyer 2mo agoI assume you mean bedrock edition, but you did not specify.
- pjmlp 2mo agoYes, the inferior edition.
- hjkl0 2mo agoMost comments here ignored the kids’ preference to play on the iPad. With that in mind, you may want to check out the Realms offering. I believe you get a 10 user server for ~$7. Note that is also highly fragmented, and there are different realms subscriptions for Java and Bedrock and also different tiers. Depends on what your goals are with the family server, Realms may not be a good fit at all. But in terms of getting kids playing together simply and quickly, it’s the easiest way to go. As a side note, I know kids who switched to Java after years of insisting only on Bedrock and sorely regretted not making the move much sooner. This is part of growing up these days.
- maccam912 2mo agoI've been on this journey! I am definitely not doing it the easiest way, but I've got it deployed on Kubernetes with https://github.com/itzg/minecraft-server-charts https://github.com/itzg/minecraft-server-charts and then use prism launcher on my kids computers to get the versions to match up and stuff. I also use automodpack so I can install some quality of life mods on the server and they'll just sync to the clients.
- cogman10 2mo agoMy main advice, ignore all advice online about JVM tuning minecraft. It's dated and often just wrong. The best thing you can do is run on the latest JVM, set your max memory as high as you can tolerate, and use ZGC. That's it. The JVM tuning guides for minecraft will have you switching and toggling every JVM flag under the sun with extremely dubious "evidence" of the payout for the flags they switch. In some cases, they will set contradictory flags. For example, setting eden size and target pause time. The fine tuning flags disable the heuristic flags like target pause time. KISS. ZGC has very low latency and the larger the heap you give it the less it'll slow things down (though, do keep it under 32gb. Object header compression works on heaps less than 32gb). And using the latest JVM reduces the memory needed and increases the performance in general of the JVM. Win-win.
- Night_Thastus 2mo agoIt did used to be required. Older Java versions performed pretty terrible. However, Java 17+ completely fixed that. Even the heaviest modded setups run buttery smooth, even on older versions which are not well optimized.
- cogman10 2mo agoIt really wasn't and was always dubious. A lot of the advice, for example, suggested using CMS. Which has been a terrible garbage collector almost since it was added to the JVM. When G1GC landed in 8, that was the correct GC to select for minecraft. Even the parallel collector would have been a better option than CMS in a lot of cases (sub 4gb heaps). It was placebo. People wanted there to be SOMETHING that made things better so they reached for the billion different flags on the JVM (rather than fixing the underlying code). I've seen the same sort of mentality professionally and it's basically always been wrong.
- Quekid5 2mo agoYep, once people discover the multitude of JVM flags the cargo culting begins... It really applies to anything with a huge number of options, I remember similar things from back when I used Gentoo and the wild suggestions I'd get for what exact CC/C++ compiler options to use...
- kelvinjps10 2mo agoYou can actually host a server for bedrock https://www.minecraft.net/en-us/download/server/bedrock https://www.minecraft.net/en-us/download/server/bedrock The version that mobile and console uses and that in PC you can choose
- hedgehog 2mo agoLuanti with Mineclonia plug-in works well if you are willing to move entirely to Mac/Windows/Linux clients. The whole stack is open source so it's easier to make changes etc if you want. No hacky binary patching of Java bytecode. Originally I was going to try Minecraft proper first since I'd already paid for that, but Microsoft doesn't honor old licenses and in the end the Luanti path probably works better. https://content.luanti.org/packages/ryvnf/mineclonia/ https://content.luanti.org/packages/ryvnf/mineclonia/
- mghackerlady 2mo agoI love Luanti. Is it as good as minecraft? No, not really, but I appreciate it's existence, if not for a non-hacky BSD minecraft experience (You can run java edition on *BSD from what I've seen, but ymmv as I've personally never tried)
- hedgehog 2mo agoFor our purposes it has the mining/crafting/construction bits the kids care about so in that dimension there's no difference. From my perspective it's been simple to operate, and having all the source makes a good base for building tools and mods (some new pet/creature entities, simplified launcher, screenshot tools).
- lizimo 2mo agoI'm surprised no one mentioned https://github.com/pumpkin-mc/pumpkin https://github.com/pumpkin-mc/pumpkin in this thread. It's the fastest Minecraft server implementation and it's written in Rust.
- spicyusername 2mo agoJust buy a Realm subscription from Mojang. I ran a private server for my kids for a while and it was a huge headache. Bedrock is purposely made to not make it easy to DIY. It was difficult for their friends to join, everyone was mad when it was down when they wanted to play, and I had to take great care to not lose their progress. Paying for a Realm doesn't scratch that DIY itch, but your kids will actually get to enjoy playing, which is really the point, isn't it? Alternately, run a Java server and use the Java-to-Bedrock plugin / proxy / adapter.
- icase 2mo agoi did this and it’s so worth it. just get everyone on java. i play on my framework laptop, my wife on her mac and my son on a steam deck.
- sebmaynard 2mo agoI ran geyser with paper for years.. now I pay for 2 realms, and it's so much easier for them and their friends
- TrueSlacker0 2mo agoI recently did this so the kids and their friends could all play together. I ended up running the paper minecraft server on one of our home linux computers. It runs the java version but this is ok as there is a mod for bedrock to connect to java. I set it up so that the service starts every time the computer boots up so they dont have to run anything to start it. Then once you have it running and open the appropriate ports on your router, technically anyone with a valid java version can connect. But now its time to install 3 mods. geyser, floodgate and via version so its easier for everyone to connect from bedrock on tablets and on versions that are too high while your server is a version behind. As of writing this paper server is still stable on 26.1 not yet to 26.2. [0] https://modrinth.com https://modrinth.com has a bunch of mods the kids have enjoyed as well.
- burner54828182 2mo agoI had Claude code do this for me last night. Setup the whole thing in about 10 minutes with directions on connecting
- munchbunny 2mo agoIf it’s a problem you’re willing to solve with money and don’t want any special stuff like mods, you can pay for a server with Realms and then you don’t need to think too hard about it. But the canonical way to do it that is both free and infinitely customizable is to host your own server. It’s pretty straightforward to do these days. However, before you do, I would suggest playing the game a bit to understand what the settings are/mean. You and your kids could play together a bit on a Realms server or a community/public server to get a feel for what you want in a custom server.
- kitd 2mo agoI tried running my own but it turned out to be more complex than I was expecting (and desiring). I ended up paying a bit for a hosted server at ShockByte.
- pridkett 2mo agoGeyserMC will be your friend if using Bedrock and Java. But the big thing is that community is a little all over the place. I use ChatGPT to walk me through everything to securely set up a couple of servers. Kids love it. Most chatbots will be smart and recommend things you need for permissions, rollback, backups, and most importantly, whitelisting. For giggles I left an unprotected Minecraft server up on the default port of my residential IP and the thing was griefed to heck within days. The griefers were just griefing other griefers.
- mikepurvis 2mo agoI run the crafty controller Docker container on my unraid machine and it's easy and pretty hands off.
- terribleperson 2mo agoIf you decide to do mods, you can make your life much, much easier by using a launcher. I use Prism, but I haven't looked for anything new in the last few years so it's possible there are better options now. Also, find a world backup solution and use it.
- hnlmorg 2mo agoJust run the either the Java or bedrock server as a docker container. There’s good community-maintained containers out there.
- deleted 2mo ago[deleted]
- JamesSwift 2mo agoThe server is simple, theres plenty of docker examples online. Cross play between bedrock and java edition, and connecting to custom servers on eg switch is the harder part. And using linux as a client is more advanced.
- willis936 2mo agoDocker compose + systemd, automated backups (bonus points for coordinating with restic/borg + rsync cronjob), and ram disks. Ram disks in particular are a game changer for game feel. For the backups you'll need to leverage a feature that exports the world. This used to need to be a mod, but it's possible it's been folded into vanilla.
- MagicMoonlight 2mo ago[dead]
- BoingBoomTschak 2mo agoMinetest?
- paradox460 2mo agoI run it on fly.io quite well https://pdx.su/blog/2024-07-08-running-a-minecraft-server-on-fly-io/ https://pdx.su/blog/2024-07-08-running-a-minecraft-server-on...
- stpedgwdgfhgdd 2mo agoMy son setup a minecraft server on a mac mini using claude, was pretty smooth. If your kids just use it in house you do no need to worry about security issues. In my case I did create a dedicated user account for the server.
- mghackerlady 2mo agoBAD ADVICE. LIKE, REALLY BAD ADVICE. Many a dumb kid has set up an ill protected minecraft server for fun and gotten ddossed by skids only a few hours later
- bennyp101 2mo agoI've been running this[0] for a few years now, moved it a couple of days ago to a portainer VM on proxmox with 6GB ram, its running perfectly fine for 3 of us, and works fine from tablets and PC. Can also run on the nintendo switch if you setup a cname to redirect to your server IP, i.e: mco.lbsg.net x.x.x.x play.lbsg.net x.x.x.x Then choose the "Lifeboat" server [0] https://jamesachambers.com/minecraft-java-bedrock-server-together-geyser-floodgate/ https://jamesachambers.com/minecraft-java-bedrock-server-tog...
- chainwax 2mo agoA couple of weeks ago I set up a server this way to help get my fiancee into video games. I already owned a proper Minecraft PC license from way back in the day, and bought Minecraft on Android for ~$5. My thinking is that we could play together, me on a Mac and her on a Galaxy Tab we have with a controller. Attempting to get these two clients to play together is what led me into the same situation you are about to find yourself in. Something to know is that there are two versions of Minecraft, Java and Bedrock (C++). Some others in this thread have talked about the history of why this is, but the important thing to know is that Java runs on Mac/Windows/Linux, and there are some neat launchers that can run it on Android. Bedrock runs on Consoles/Tablets/Phones/Windows. Note that Bedrock _does not_ run on Linux or Mac. There are ways to host Bedrock-only servers if you're _sure_ no users will ever be running the Java client, but I would recommend running a Java server with the Geyser and Floodgate plugins for compatibility reasons. The plugins are a translation layer that trick Bedrock clients into thinking they're connecting to a Bedrock server. I've been playing this way (me on Mac/Java, her on Android/Bedrock) for two weeks with no real issues. I haven't explored adding any other plugins to the server. I'm running this in a container on an old Thinkpad in my office. This setup is common enough that GLM-5.2 set it up in (nearly) one shot. I also really recommend running an instance of https://bluemap.bluecolored.de/ https://bluemap.bluecolored.de/ in another container on the same machine. It hosts a neat map of your world, which your family could pull up on their phones while not playing. My server itself is LAN only, but I used a Cloudflare tunnel to host the map so she can show her friends: https://mcmap.thg3.net/ https://mcmap.thg3.net/ Let me know if you have any questions or would like my server config!
- mghackerlady 2mo agoIn case you aren't aware, bedrock and java are both part of the same license and can both be played freely in the launcher. Also, while desktop GNU/Linux can't run bedrock, android can, and that has been exploited to allow for actual desktop linux clients for bedrock
- chainwax 2mo agoI'm aware that if you buy Minecraft proper (~$30) you have a license for Bedrock and Java, but I'm a little blurry on what license you get when you buy Minecraft from the Google Play store (~$5). I'm assuming it's a Bedrock-only license, and Microsoft makes money off selling skins etc. I think most seasoned players, technical folks, or Mac users, would prefer Java. Java Minecraft doesn't have microtransactions, skinning your character is a matter of changing a file, and the plugin/mod support is huge. That's why I stuck to treating the server as "Java first, Bedrock supported" instead of ignoring Java and only playing Bedrock.
- whalesalad 2mo agodocker run itzg/minecraft-server:latest