itzg / itzg/docker-minecraft-server

Provide an option to backup world data when server version changes

Open
#529 1 comment 2 reactions 0 assignees View on GitHub
enhancement
Dominant language
Shell
Stars
14.3k
Forks
1.9k
Avg merge
2d 10h
Merged PRs (30d)
31

Description

Hard requirements:
- [ ] handle `TYPE=VANILLA`
- [ ] use `level` in `server.properties` and/or `LEVEL` var to account for both config styles
- [ ] create backup as tar.gz in the `/data` directory named with a prefix the same as the level name

Nice to have requirements:
- [ ] Identify data version of current world data by inspecting level.dat [wiki](https://minecraft.wiki/w/Data_version)
- [ ] Identify data version of Minecraft software about to be started by inspecting its version.json [wiki](https://minecraft.wiki/w/Data_version)

Open questions
- [ ] keep only one backup and overwrite or increment a backup index?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the server startup logic that reads server.properties, LEVEL, and TYPE=VANILLA, then review the /data layout and the level.dat and version.json formats. Done means world data is backed up as a tar.gz in /data with a level-name prefix, with the backup retention policy decided and both configuration styles handled.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, shell
Domain
devops, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.