11#! /bin/bash
22
3- # Minecraft Java Server Installer for Proxmox LXC/ VM
3+ # Minecraft Java Server Installer for Proxmox VM
44# Tested on Debian 11/12 and Ubuntu 24.04
55# Author: TimInTech
66
77set -e # Exit script on error
88
99# Install required dependencies
1010sudo apt update && sudo apt upgrade -y
11- sudo apt install -y openjdk-17 -jre-headless screen wget curl jq
11+ sudo apt install -y openjdk-21 -jre-headless screen wget curl jq unzip
1212
1313# Set up server directory
1414sudo mkdir -p /opt/minecraft
@@ -25,7 +25,7 @@ if [[ -z "$LATEST_VERSION" || -z "$LATEST_BUILD" ]]; then
2525 exit 1
2626fi
2727
28- echo " Downloading PaperMC - Version: $LATEST_VERSION , Build: $LATEST_BUILD "
28+ echo " 📦 Downloading PaperMC - Version: $LATEST_VERSION , Build: $LATEST_BUILD "
2929wget -O server.jar " https://api.papermc.io/v2/projects/paper/versions/$LATEST_VERSION /builds/$LATEST_BUILD /downloads/paper-$LATEST_VERSION -$LATEST_BUILD .jar"
3030
3131# Accept the Minecraft EULA
@@ -36,16 +36,23 @@ cat <<EOF > start.sh
3636#!/bin/bash
3737java -Xms2G -Xmx4G -jar server.jar nogui
3838EOF
39-
4039chmod +x start.sh
4140
42- # Ensure screen is installed before starting the server
43- if ! command -v screen & > /dev/null; then
44- echo " ERROR: 'screen' is not installed. Install it with 'sudo apt install screen'."
45- exit 1
46- fi
41+ # Create update script
42+ cat << EOF > update.sh
43+ #!/bin/bash
44+ cd /opt/minecraft || exit 1
45+ LATEST_VERSION=\$ (curl -s https://api.papermc.io/v2/projects/paper | jq -r '.versions | last')
46+ LATEST_BUILD=\$ (curl -s https://api.papermc.io/v2/projects/paper/versions/\$ LATEST_VERSION | jq -r '.builds | last')
4747
48- # Start the server in a detached screen session
48+ wget -O server.jar "https://api.papermc.io/v2/projects/paper/versions/\$ LATEST_VERSION/builds/\$ LATEST_BUILD/downloads/paper-\$ LATEST_VERSION-\$ LATEST_BUILD.jar"
49+ echo "✅ Update complete."
50+ EOF
51+ chmod +x update.sh
52+
53+ # Start server in detached screen session
4954screen -dmS minecraft ./start.sh
5055
51- echo " Setup complete! Use 'screen -r minecraft' to open the console."
56+ echo " ✅ Minecraft Server setup complete!"
57+ echo " To access console: sudo -u $( whoami) screen -r minecraft"
58+
0 commit comments