Files
minecraft_server/scripts/init.sh
T
2026-09-11 14:45:51 +01:00

56 lines
2.4 KiB
Bash
Executable File

#!/usr/bin/env sh
# Define a helper function that runs a command
# If the command fails, the script prints an error message
# and exits immediately.
run() {
# "$@" expands to all arguments passed to this function
# and preserves proper word splitting and quoting.
"$@" || {
echo "Error: command failed: $*" >&2
exit 1
}
}
# Make sure volumes have correct permissions
run chown minecraft_server:minecraft_server /bluemap_data
run chown minecraft_server:minecraft_server /bluemap_web
run chown minecraft_server:minecraft_server /bluemap_maps
run chown minecraft_server:minecraft_server /fabric_data
run chown minecraft_server:minecraft_server /luckperms_data
run chown minecraft_server:minecraft_server /paper_data
run chown minecraft_server:minecraft_server /schematics
run chown minecraft_server:minecraft_server /velocity_data
run chown minecraft_server:minecraft_server /duplicati_data
# Make sure nested volume mount points exist
run mkdir -p /fabric_data/bluemap/web/maps
run chown minecraft_server:minecraft_server /fabric_data/bluemap
run chown minecraft_server:minecraft_server /fabric_data/bluemap/web
run chown minecraft_server:minecraft_server /fabric_data/bluemap/web/maps
run mkdir -p /fabric_data/config/worldedit/schematics
run chown minecraft_server:minecraft_server /fabric_data/config
run chown minecraft_server:minecraft_server /fabric_data/config/worldedit
run chown minecraft_server:minecraft_server /fabric_data/config/worldedit/schematics
run mkdir -p /paper_data/bluemap/web/maps
run chown minecraft_server:minecraft_server /paper_data/bluemap
run chown minecraft_server:minecraft_server /paper_data/bluemap/web
run chown minecraft_server:minecraft_server /paper_data/bluemap/web/maps
run mkdir -p /paper_data/plugins/WorldEdit/schematics
run chown minecraft_server:minecraft_server /paper_data/plugins
run chown minecraft_server:minecraft_server /paper_data/plugins/WorldEdit
run chown minecraft_server:minecraft_server /paper_data/plugins/WorldEdit/schematics
# Copy config files for paper
# Paper emmits (non-fatal) errors when these files are mounted as read only
run cp /bukkit.yml /paper_data
run chown minecraft_server:minecraft_server /paper_data/bukkit.yml
run cp /commands.yml /paper_data
run chown minecraft_server:minecraft_server /paper_data/commands.yml
run cp /spigot.yml /paper_data
run chown minecraft_server:minecraft_server /paper_data/spigot.yml