September 16, 2025Sep 16 Author 4 hours ago, kerpster said:You are talking about how to stop the bedrock minecraft from updating correct not the docker itself... just want to make sure.The above process pins this docker container to a specific tagged version, so it will prevent docker from updating this container, if you want to go back to running latest then you simply reverse what you did, click on 'check for updates' and apply any updates pending.
October 6, 2025Oct 6 I have a question on the backup process.I have a few servers set up pointing to separate config folders and separate ports. They all seem to be working fine, except the only one that appears to get the backups done is in the first one I set up. All of them have the backup hours and purge days set to the default 12/14. In the logs on the docker, it shows all of the scripts have the same PID.Is it possible that the backups are all running and just sending everything to the first backups folder? Or maybe the last server to start is the last set of scripts (if they get overwritten)?I'm not 100% sure if I set them up correctly for multiple instances (when installing, i just update name, title, ports and config folders). Whenever there's an update to the container for the server jar, I have to manually copy it to the other config folders.Any suggestions are greatly appreciated!Sample log:Created by...___. .__ .__\_ |__ |__| ____ | |__ ____ ___ ___ | __ \| |/ \| | \_/ __ \\ \/ / | \_\ \ | | \ Y \ ___/ > < |___ /__|___| /___| /\___ >__/\_ \ \/ \/ \/ \/ \/ https://hub.docker.com/u/binhex/2025-10-06 09:13:16.390700 [info] Host is running unRAID2025-10-06 09:13:16.404721 [info] System information: Linux 21599087d801 6.12.24-Unraid #1 SMP PREEMPT_DYNAMIC Sat May 3 00:12:52 PDT 2025 x86_64 GNU/Linux2025-10-06 09:13:16.418234 [info] Application name: 'minecraftserver'2025-10-06 09:13:16.431188 [info] Base image release tag: '2025092801'2025-10-06 09:13:16.445050 [info] Output image release tag: '1.21.9-01'2025-10-06 09:13:16.462793 [info] PUID defined as '99'2025-10-06 09:13:16.489106 [info] PGID defined as '100'2025-10-06 09:13:16.529392 [info] UMASK defined as '000'2025-10-06 09:13:16.550098 [info] Permissions already set for '/config'2025-10-06 09:13:16.572842 [info] Deleting files in /tmp (non recursive)...2025-10-06 09:13:16.589441 [info] CREATE_BACKUP_HOURS defined as '12'2025-10-06 09:13:16.605943 [info] PURGE_BACKUP_DAYS defined as '14'2025-10-06 09:13:16.621473 [info] ENABLE_WEBUI_CONSOLE defined as 'yes'2025-10-06 09:13:16.636201 [info] ENABLE_WEBUI_AUTH defined as 'yes'2025-10-06 09:13:16.650632 [info] WEBUI_USER defined as [REDACTED]2025-10-06 09:13:16.665838 [info] WEBUI_PASS defined as [REDACTED]2025-10-06 09:13:16.680721 [info] WEBUI_CONSOLE_TITLE defined as 'Minecraft Java Server 1'2025-10-06 09:13:16.697477 [info] CUSTOM_JAR_PATH defined as '/config/minecraft/minecraft_server.jar'2025-10-06 09:13:16.769840 [info] JAVA_VERSION defined as 'latest'2025-10-06 09:13:16.797693 [info] JAVA_INITIAL_HEAP_SIZE defined as '2048M'2025-10-06 09:13:16.812668 [info] JAVA_MAX_HEAP_SIZE defined as '2048M'2025-10-06 09:13:16.827162 [info] JAVA_MAX_THREADS defined as '2'2025-10-06 09:13:16.841825 [info] JAVA_CUSTOM_ARGS not defined,(via -e JAVA_CUSTOM_ARGS)2025-10-06 09:13:16.857593 [info] STARTUP_CMD not defined (via -e STARTUP_CMD)2025-10-06 09:13:16.876767 [info] Starting Supervisor...2025-10-06 09:13:17,083 INFO Included extra file "/etc/supervisor/conf.d/minecraft-server.conf" during parsing2025-10-06 09:13:17,083 INFO Set uid to user 0 succeeded2025-10-06 09:13:17,088 INFO RPC interface 'supervisor' initialized2025-10-06 09:13:17,088 INFO supervisord started with pid 72025-10-06 09:13:18,090 INFO spawned: 'backup-script' with pid 1412025-10-06 09:13:18,091 INFO spawned: 'purge-script' with pid 1422025-10-06 09:13:18,091 INFO spawned: 'start-script' with pid 1432025-10-06 09:13:18,092 INFO reaped unknown pid 8 (exit status 0)2025-10-06 09:13:18,094 DEBG 'backup-script' stdout output:[info] Waiting 12 hours before running worlds backup...2025-10-06 09:13:18,095 INFO success: backup-script entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)2025-10-06 09:13:18,095 INFO success: purge-script entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)2025-10-06 09:13:18,095 INFO success: start-script entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)2025-10-06 09:13:18,095 DEBG 'purge-script' stdout output:[info] Removing any Minecraft worlds backups with a creation date older than 14 days...2025-10-06 09:13:18,096 DEBG 'start-script' stdout output:[info] Minecraft folder '/config/minecraft' already exists, rsyncing newer files...2025-10-06 09:13:18,097 DEBG 'purge-script' stdout output:[info] Checking for old backups in 12 hours...2025-10-06 09:13:18,144 DEBG 'start-script' stdout output:[info] EULA file exists, checking EULA is set to 'true'...2025-10-06 09:13:18,146 DEBG 'start-script' stdout output:[info] EULA set to 'true'2025-10-06 09:13:18,157 DEBG 'start-script' stdout output:[info] Minecraft version '1.21.9' detected, adding log4j mitigation for v1.7.*-v1.11.2 to start cmd...2025-10-06 09:13:18,159 DEBG 'start-script' stdout output:[info] Starting Minecraft Java process...2025-10-06 09:13:18,162 DEBG 'start-script' stdout output:[info] Minecraft Java process is running2025-10-06 09:13:18,162 DEBG 'start-script' stdout output:[info] Starting Minecraft console Web UI...2025-10-06 09:13:18,171 DEBG 'start-script' stderr output:2025/10/06 09:13:18 GoTTY is starting with command: screen -x minecraft2025-10-06 09:13:18,172 DEBG 'start-script' stderr output:2025/10/06 09:13:18 Using Basic Authentication2025/10/06 09:13:18 Permitting clients to write input to the PTY.2025/10/06 09:13:18 HTTP server is listening at: http://[::]:8222/2025/10/06 09:13:18 Alternative URL: http://127.0.0.1:8222/2025/10/06 09:13:18 Alternative URL: http://[::1]:8222/2025/10/06 09:13:18 Alternative URL: http://172.17.0.6:8222/
October 26, 2025Oct 26 supervisordredacted.txtHas anybody else had issues with their minecraft server?In the game client I just get the vague "An error has occured."I even tried deleting the entire docker and re-installed it without changing anything from the default and I get the same error.I added my supervisord with my IP redacted for refference. Edited October 26, 2025Oct 26 by ONI
November 18, 2025Nov 18 Trying to get this set up for my kid and his friends... How do I secure it properly? I have the port forwarded through my firewall... I use tailscale for everything else but don't want to have to do that for the other kids... I tried to get the whitelist working and get a reasonable response when I add a user but Whitelist on responds with:
November 18, 2025Nov 18 Author 1 hour ago, Arbadacarba said:Trying to get this set up for my kid and his friends... How do I secure it properly? I have the port forwarded through my firewall... I use tailscale for everything else but don't want to have to do that for the other kids...I tried to get the whitelist working and get a reasonable response when I add a user but Whitelist on responds with:wrong command, that is for minecraft java, not bedrock:- https://minecraft.fandom.com/wiki/Commands/whitelist
December 9, 2025Dec 9 Whats the normal timeline on getting this updated after minecraft is updated? I had an update today to version 1.21.130 on my pc - and I have checked for updates and everything through unraid. I even added a variable for GAME_VERSION - latest, but its still the older version.I am running straight vanilla - i got tired years ago of the mod's and having to wait for updates.
December 10, 2025Dec 10 17 hours ago, Thrillba said:Whats the normal timeline on getting this updated after minecraft is updated? I had an update today to version 1.21.130 on my pc - and I have checked for updates and everything through unraid. I even added a variable for GAME_VERSION - latest, but its still the older version.I am running straight vanilla - i got tired years ago of the mod's and having to wait for updates.A little bit after I posted this guess what - boom - update. So I guess the answer is ....shortly.
December 31, 2025Dec 31 I am having a weird issue where villages aren't spawning... I even reinstalled the docker, and spun up a new world again... no mods. I go to where a seedmap says one is... nothing. I even used the console command to locate the closest village... there wasn't one there! Is there some option loading in the background that I don't see that is preventing villages from spawning? Can someone PLEASE create a new world and confirm they can find a village? I created a new world for the first time in a LONG time right after the update a few days ago.
December 31, 2025Dec 31 Okay... so I figured it out... I think I had the docker installed for so long that some things just hadn't cleaned up over the years... I uninstalled again AND removed all of the folder structure as well, reinstalled, and then finally villages started appearing again! Edited December 31, 2025Dec 31 by snowmangoh
January 14Jan 14 Is there a way to the get the 'Invite to play' button working in the social tab? Currently it's greys out. I'm not sure if it's a server property setting that has caused this.
January 17Jan 17 hi i had this working once long ago dont remember but doesnt seem to be working now when i use iti have latest minecraft bedrock on windows running i point to my server ip 192.168.0.3 and port 19132 and 19132 and 8222it wont connect... the logs of the server say the basic authentication is ok here is the logs... but is there a video as im a visual learner... or is there something thats changed from several years ago when i first set it uptext error warn system array login 2026-01-17 10:10:20,136 DEBG 'webui-script' stderr output: 2026/01/17 10:10:20 HTTP server is listening at: http://[::]:8222/ 2026-01-17 10:10:20,136 DEBG 'webui-script' stderr output: 2026/01/17 10:10:20 Alternative URL: http://127.0.0.1:8222/ 2026/01/17 10:10:20 Alternative URL: http://[::1]:8222/ 2026/01/17 10:10:20 Alternative URL: http://172.17.0.3:8222/ 2026-01-17 10:10:20,138 DEBG 'backup-script' stdout output: [info] Waiting 12 hours before running worlds backup... 2026-01-17 10:10:20,139 DEBG 'start-script' stdout output: [info] Minecraft folder '/config/minecraft' already exists, rsyncing newer files... 2026-01-17 10:10:20,144 DEBG 'purge-script' stdout output: [info] Checking for old backups in 12 hours... 2026-01-17 10:10:20,314 DEBG 'start-script' stdout output: [info] Starting Minecraft Bedrock process... 2026-01-17 10:10:20,322 DEBG 'start-script' stdout output: [info] Minecraft Bedrock process is running 2026-01-17 10:10:21,323 INFO success: start-script entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2026-01-17 10:12:56,428 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:50453 2026-01-17 10:12:56,428 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:50453 200 GET / 2026-01-17 10:12:56,480 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:50453 2026-01-17 10:12:56,480 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:50453 200 GET /css/index.css 2026-01-17 10:12:56,488 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:50453 2026-01-17 10:12:56,488 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:61248 2026-01-17 10:12:56,488 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:61248 200 GET /css/xterm_customize.css 2026-01-17 10:12:56,488 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:50453 200 GET /css/xterm.css 2026-01-17 10:12:56,489 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:55311 2026/01/17 10:12:56 192.168.0.49:55311 200 GET /auth_token.js 2026-01-17 10:12:56,489 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:53044 2026/01/17 10:12:56 192.168.0.49:53044 200 GET /config.js 2026-01-17 10:12:56,489 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:54743 2026-01-17 10:12:56,504 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:54743 200 GET /js/gotty.js 2026-01-17 10:12:56,585 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 New client connected: 192.168.0.49:56129, connections: 1/0 2026-01-17 10:12:56,593 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:54743 2026-01-17 10:12:56,594 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:53044 2026-01-17 10:12:56,594 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:53044 200 GET /manifest.json 2026-01-17 10:12:56,594 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:54743 200 GET /icon.svg 2026-01-17 10:12:56,604 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:54743 2026-01-17 10:12:56,604 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:54743 200 GET /icon_192.png 2026-01-17 10:12:56,608 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 Basic Authentication Succeeded: 192.168.0.49:54743 2026-01-17 10:12:56,608 DEBG 'webui-script' stderr output: 2026/01/17 10:12:56 192.168.0.49:54743 200 GET /favicon.ico
March 23Mar 23 I wanted to share a backup script I wrote for running a Minecraft Bedrock server in Docker on Unraid. This script safely backs up the world by coordinating with the server before copying files.FeaturesUses save hold and save query to ensure a consistent backupWaits for Bedrock confirmation: “Data saved. Files are now ready to be copied.”Automatically resumes saves after completion (or on failure)Creates:A timestamped .tar.gz archiveA latest uncompressed backup for quick accessRotates backups (keeps newest N copies)Designed for use with User Scripts plugin⚠️ Configuration RequiredBefore using, update these variables:CONTAINER → your Minecraft container nameSOURCE → path to your world folderDEST → where backups should be storedLOGFILE → path to the Bedrock log inside the containerScript[code]#!/bin/bashset -euo pipefailDATE=$(date +"%Y-%m-%d_%H-%M-%S")===== CONFIGURE THESE =====CONTAINER="your-minecraft-container-name"SOURCE="/path/to/minecraft/worlds"DEST="/path/to/backup/location"LOGFILE="/path/to/bedrock/logfile.log"===========================ARCHIVE="$DEST/minecraft_backup_$DATE.tar.gz"LATEST="$DEST/latest"MAX_WAIT=120POLL_INTERVAL=2KEEP_BACKUPS=10get_screen_session() {docker exec -u nobody "$CONTAINER" screen -wipe >/dev/null 2>&1 || truedocker exec -u nobody "$CONTAINER" screen -ls | awk '/.minecraft[[:space:]]+DetachedDetachedDetached/ {print $1; exit}'}send_cmd() {local session="$1"local cmd="$2"docker exec -u nobody "$CONTAINER" screen -S "$session" -p 0 -X stuff $"$cmd\r"}wait_for_ready() {local start_ts now elapsed log_startstart_ts=$(date +%s)log_start=$(docker exec "$CONTAINER" sh -c "wc -l < '$LOGFILE'")while true; dosend_cmd "$SCREEN_SESSION" "save query"sleep "$POLL_INTERVAL"if docker exec "$CONTAINER" sh -c \"tail -n +$((log_start + 1)) '$LOGFILE' | grep -q 'Data saved. Files are now ready to be copied.'" ; thenreturn 0finow=$(date +%s)elapsed=$((now - start_ts))if (( elapsed >= MAX_WAIT )); thenreturn 1fidone}prune_old_backups() {mapfile -t backups < <(find "$DEST" -maxdepth 1 -type f -name 'minecraft_backup_*.tar.gz' | sort -r)if (( ${#backups[@]} > KEEP_BACKUPS )); thenecho "Pruning old backups..."for old_backup in "${backups[@]:$KEEP_BACKUPS}"; doecho "Removing $old_backup"rm -f "$old_backup"donefi}cleanup() {if [[ -n "${SCREEN_SESSION:-}" ]]; thenecho "Cleanup: resuming world saves..."send_cmd "$SCREEN_SESSION" "save resume" || truefi}trap cleanup EXITmkdir -p "$DEST"echo "Looking up active Minecraft screen session..."SCREEN_SESSION="$(get_screen_session)"if [[ -z "$SCREEN_SESSION" ]]; thenecho "ERROR: Could not find a live detached Minecraft screen session."docker exec -u nobody "$CONTAINER" screen -ls || trueexit 1fiecho "Using screen session: $SCREEN_SESSION"echo "Holding world saves..."send_cmd "$SCREEN_SESSION" "save hold"sleep 2echo "Waiting for Bedrock to report files are ready..."if ! wait_for_ready; thenecho "ERROR: Timed out waiting for Bedrock to report backup readiness."exit 1fiecho "Refreshing latest uncompressed backup..."rm -rf "$LATEST"mkdir -p "$LATEST"cp -a "$SOURCE"/. "$LATEST"/echo "Creating archive..."tar -czf "$ARCHIVE" -C "$SOURCE" .echo "Pruning backups to keep only the newest $KEEP_BACKUPS..."prune_old_backupsecho "Resuming world saves..."send_cmd "$SCREEN_SESSION" "save resume"trap - EXITecho "Backup complete: $ARCHIVE"echo "Latest uncompressed copy: $LATEST"[/code]How I Use ItInstalled via User Scripts pluginScheduled (e.g., hourly or daily)Runs on the Unraid host (not inside the container)NotesAssumes your container uses screen (common for many Minecraft Docker images)The latest folder is useful for quick restores without extracting archivesThe cleanup trap ensures saves resume even if something failsIf anyone has improvements or edge cases I didn’t think about, I’d love feedback 👍
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.