Homelab
Minecraft Server Management
Managing Your Minecraft Kubernetes Server: RCON, Whitelist, and Backups
Overview
Quick reference for managing your Minecraft Kubernetes server. Covers log viewing, RCON console commands for player and whitelist management, world data operations, backup procedures, plugin administration, and common diagnostics.
Before You Begin
Prerequisites
- Minecraft Paper Server completed
View Logs
Live Logs
kubectl logs -n minecraft -l app=minecraft -c minecraft -f Recent Logs
kubectl logs -n minecraft -l app=minecraft -c minecraft --tail=50 Error Search
kubectl logs -n minecraft -l app=minecraft -c minecraft | grep -iE "(error|exception|failed)" Access RCON Console
Minecraft commands1 for server administration. See Paper documentation2 for Paper-specific administration.
Interactive Session
kubectl exec -it -n minecraft deploy/minecraft -- rcon-cli Single Command
kubectl exec -n minecraft deploy/minecraft -- rcon-cli "<command>" | Note: | If rcon-cli isn't available, attach to the container directly for server console access. |
Player Management
# Make player an operator
rcon-cli "op <player>"
# Remove operator status
rcon-cli "deop <player>"
# List online players
rcon-cli "list"
# Kick player
rcon-cli "kick <player> <reason>"
# Ban player
rcon-cli "ban <player> <reason>" Whitelist
# Enable whitelist
rcon-cli "whitelist on"
# Disable whitelist
rcon-cli "whitelist off"
# Add player to whitelist
rcon-cli "whitelist add <player>"
# Remove player from whitelist
rcon-cli "whitelist remove <player>"
# List whitelisted players
rcon-cli "whitelist list"
# Reload whitelist from file
rcon-cli "whitelist reload" Find Players Who Tried to Join
kubectl logs -n minecraft -l app=minecraft -c minecraft --tail=100 | grep -i "not whitelisted" | Note: | Bedrock players via Geyser/Floodgate have usernames prefixed with . (e.g., .BedrockPlayer). Use the prefixed name in whitelist. |
Teleportation
# Teleport player to you
rcon-cli "tp <player> <your-username>"
# Teleport to coordinates
rcon-cli "tp <player> <x> <y> <z>"
# Teleport to another player
rcon-cli "tp <player1> <player2>" Game Settings
# Change gamemode
rcon-cli "gamemode survival <player>"
rcon-cli "gamemode creative <player>"
rcon-cli "gamemode spectator <player>"
# Set time
rcon-cli "time set day"
rcon-cli "time set night"
# Toggle weather
rcon-cli "weather clear"
rcon-cli "weather rain" Spawn Points
# Set world spawn at your location
rcon-cli "setworldspawn"
# Set world spawn at coordinates
rcon-cli "setworldspawn <x> <y> <z>"
# Set world spawn at a player's current location
rcon-cli "execute at <player> run setworldspawn"
# Set individual player's spawn point
rcon-cli "spawnpoint <player>"
# Set player spawn at another player's location
rcon-cli "execute at <player1> run spawnpoint <player2> ~ ~ ~" Announcements
# Simple broadcast (shows as [Server] in chat)
rcon-cli "say Server restarting in 5 minutes!"
# Formatted chat message
rcon-cli 'tellraw @a {"text":"Important announcement","color":"red"}'
# Big title on screen (set subtitle first if needed)
rcon-cli 'title @a subtitle {"text":"Enjoy your stay","color":"yellow"}'
rcon-cli 'title @a title {"text":"Welcome!","color":"gold"}' Server Control
# Save world
rcon-cli "save-all"
# Stop server (use with caution)
rcon-cli "stop" Manage World Data
List Contents
POD=$(kubectl get pod -n minecraft -l app=minecraft -o jsonpath='{.items[0].metadata.name}')
kubectl exec -n minecraft $POD -- ls -lh /data/world Check Disk Usage
kubectl exec -n minecraft deploy/minecraft -- du -sh /data/ Create Backups
Full Server Backup
POD=$(kubectl get pod -n minecraft -l app=minecraft -o jsonpath='{.items[0].metadata.name}')
mkdir -p ~/minecraft-backup/$(date +%Y%m%d)
kubectl cp minecraft/$POD:/data ~/minecraft-backup/$(date +%Y%m%d)/ World Only
POD=$(kubectl get pod -n minecraft -l app=minecraft -o jsonpath='{.items[0].metadata.name}')
kubectl cp minecraft/$POD:/data/world ~/minecraft-backup/world-$(date +%Y%m%d)/ Manage Plugins
List Installed Plugins
kubectl exec -n minecraft deploy/minecraft -- ls /data/plugins/ Check BentoBox Addons
kubectl exec -n minecraft deploy/minecraft -- ls /data/plugins/BentoBox/addons/ View Plugin Configs
kubectl exec -n minecraft deploy/minecraft -- cat /data/plugins/<plugin>/config.yml Troubleshoot Issues
Pod Not Starting
# Check pod status
kubectl get pods -n minecraft
# Check events
kubectl describe pod -n minecraft -l app=minecraft
# Check HelmRelease
flux get helmreleases -n minecraft Connection Issues
# Verify services
kubectl get svc -n minecraft
# Check playit.gg agent
kubectl logs -n minecraft -l app=minecraft -c playit-agent Restart Server
kubectl rollout restart deployment -n minecraft minecraft
kubectl get pods -n minecraft -w Resources
Footnotes
Minecraft Wiki, "Commands," minecraft.wiki. Accessed: Dec. 30, 2025. [Online]. Available: https://minecraft.wiki/w/Commands ↩
PaperMC, "Paper Administration," docs.papermc.io. Accessed: Dec. 30, 2025. [Online]. Available: https://docs.papermc.io/paper/admin ↩