Wrapper around a Minecraft server process, designed to automate backups.
 
 
Go to file
Jef Roosens d204c68400
ci/woodpecker/push/lint Pipeline was successful Details
ci/woodpecker/push/build Pipeline was successful Details
ci/woodpecker/push/clippy Pipeline failed Details
fix: actually working incremental backup
2023-06-15 09:56:40 +02:00
.cargo feat: move running server to subcommand 2023-06-14 22:17:53 +02:00
.woodpecker fix(ci): i'm dumb 2023-06-05 11:44:18 +02:00
src fix: actually working incremental backup 2023-06-15 09:56:40 +02:00
.dockerignore feat: solely handle single terminating signal for now 2023-06-06 20:49:00 +02:00
.gitignore refactor: move backup logic to separate module 2023-06-13 15:12:30 +02:00
CHANGELOG.md feat: move running server to subcommand 2023-06-14 22:17:53 +02:00
Cargo.lock fix: use correct env var for backup dir 2023-06-13 13:44:08 +02:00
Cargo.toml fix: use correct env var for backup dir 2023-06-13 13:44:08 +02:00
Dockerfile fix: use correct env var for backup dir 2023-06-13 13:44:08 +02:00
LICENSE Initial commit 2021-09-13 12:02:06 +02:00
README.md chore: update readme 2023-06-13 11:51:18 +02:00

README.md

Alex

Alex is a wrapper around a typical Minecraft server process. It acts as the parent process, and sits in between the user's input and the server's stdin. This allows Alex to support additional commands that execute Rust code.

Why

The primary usecase for this is backups. A common problem I've had with Minecraft backups is that they fail, because the server is writing to one of the region files as the backup is being created. Alex solves this be sending save-off and save-all to the server, before creating the tarball. Afterwards, saving is enabled again with save-on.

Features

  • Create safe backups as gzip-compressed tarballs using the backup command
  • Automatically create backups periodically
  • Properly configures the process (working directory, optimisation flags)
  • Configure everything as CLI arguments or environment variables

Installation

Alex is distributed as statically compiled binaries for Linux amd64 and arm64. These can be found here.