Sign inSign up

melias77/minecraft

By melias77

Updated over 1 year ago

Coding kids. Start a Minecraft server. Including a cloudflare setup for secure multiple players.

Image
Internet of things
Web servers
0

120

melias77/minecraft repository overview

start minecraft server

Local minecraft server:

docker run --rm -e WORLD="myworld" -e GAME_MODE="creative" -e JVM_OPTS="-Xmx4096M -Xms4096M" -p 25565:25565 melias77/minecraft:openjdk21alpine-1

Minecraft Cloudflare docker-compose example assuming cloudflare account configuration has been configured. This allows players to play across internet in a safe manner:

Create a docker-compose.yml file with following content:

version: '3.9'
services:
  cloudflaretunnel:
    container_name: cloudflaretunnel
    image: cloudflare/cloudflared:2023.10.0
    restart: unless-stopped
    environment:
      - TUNNEL_TOKEN=$TUNNEL_TOKEN
    command: tunnel --no-autoupdate run
    networks:
      - game-network
  minecraft-server:
    container_name: minecraft-server
    image: melias77/minecraft:openjdk21apline-1
    entrypoint: ['/bin/sh','-c']
    command: |
      "
        #TODO: Download latest binary
        sed -i 's/^gamemode=.*/gamemode=${GAME_MODE}/' server.properties
        java ${JVM_OPTS} -jar server.jar nogui --universe data --world $WORLD
      "
    ports:
      - 25565:25565
    environment:    
      - WORLD=$WORLD
      - GAME_MODE=$GAME_MODE
      - "JVM_OPTS=-Xmx4096M -Xms4096M"
    volumes:
      - ${DATA}:/opt/app/data
    networks:
      - game-network  
networks:
  game-network:

Create a run.sh script containing following:

#https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes
sudo sysctl -w net.core.rmem_max=2500000
sudo sysctl -w net.core.wmem_max=2500000
export TUNNEL_TOKEN="<INSERT TOKEN>"
export DATA=${HOME}/minecraft/data
export WORLD="pepsi_faxekondi_world"
export GAME_MODE="survival"
export SEED="6630997395534342573"
export JVM_OPTS="-Xmx1024M -Xms1024M"
export UPGRADE=false
export MINECRF_DOWNLOAD="https://piston-data.mojang.com/v1/objects/8dd1a28015f51b1803213892b50b7b4fc76e594d/server.jar"

docker compose up

Tag summary

Content type

Image

Digest

sha256:66554d642

Size

286.3 MB

Last updated

over 1 year ago

docker pull melias77/minecraft:openjdk21alpine-1