User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
services:minecraft [2025/03/07 11:10] – created willyservices:minecraft [2025/03/07 11:44] (current) willy
Line 1: Line 1:
 ====== Minecraft Server ====== ====== Minecraft Server ======
  
 +This show how to host a Minecraft Bedrock server.
  
 +[[https://github.com/itzg/docker-minecraft-bedrock-server?tab=readme-ov-file|This]] link refers to the docker solutuion choosen.
 +
 +[[https://minecraft.wiki/w/Server.properties#Option_keys|This]] link details all the settings you can set as env variables in the composer.
 +
 +===== Installation =====
 +
 +See 
 +<code bash>
 +useradd -d /data/daemons/minecraft minecraft
 +mkdir /data/minecraft
 +chown minecraft:minecraft /data/minecraft/
 +</code>
 +
 +<file - docker-compose.yaml>
 +services:
 +  bds:
 +    image: itzg/minecraft-bedrock-server
 +    environment:
 +      EULA: "TRUE"
 +    ports:
 +      - "19132:19132/udp"
 +    volumes:
 +      - ./data:/data
 +    stdin_open: true
 +    tty: true
 +</file>
 +
 +<code bash>
 +podman compose pull
 +</code>
 +
 +
 +===== Remote Access =====
 +
 +Mnecraft server doesn't use HTTP, so there is no need for a reverse proxy. You need to forward the UDP port from your external server to your internal (home) server (see [[networking:wireguard_redirects|here]]):
 +
 +<code bash
 +# on external server!
 +nft add rule wg prerouting iifname "enp1s0" dnat ip to udp dport map { 19132 : 10.70.0.1 . 19132 }
 +/etc/init.d/nftables save
 +</code>
 +
 +
 +===== Autostart =====
 +
 +Using my //user-containers// OpenRC script just link it:
 +<code bash>
 +cd /etc/init.d
 +ln -s user-containers user-containers.minecraft
 +</code>
 +
 +Create /etc/conf.d/user-containers.minecraft:
 +<file - user-containers.minecraft>
 +USER=minecraft
 +DESCRIPTION="Minecraft Server"
 +</file>
 +
 +And set it up for autostart:+
 +<code bash>
 +/etc/init.d/user-containers.minecraft start
 +rc-update add user-containers.minecraft default
 +</code>
  

This website uses technical cookies only. No information is shared with anybody or used in any way but provide the website in your browser.

More information