# Install dependencies
sudo apt-get install -y wget apt-transport-https gnupg screen
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /usr/share/keyrings/adoptium.asc
echo "deb [signed-by=/usr/share/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt-get update # update if you haven't already
sudo apt-get install temurin-17-jdk
# Create a new unprivileged user for minecraft
sudo useradd -r -m -d /opt/minecraft minecraft -s /bin/bash
# Create the directory that will house our minecraft instances
sudo su --shell /bin/bash minecraft
cd ~
mkdir instances
exit
# Copy the [email protected] file into the correct place.
sudo vi /etc/systemd/system/[email protected]
# Reload systemd units
sudo systemctl daemon-reload
# Put file minecraft in /etc/ufw/applications.d/minecraft
sudo ufw app update Minecraft
sudo ufw app info Minecraft
sudo ufw allow Minecraft
sudo ufw allow OpenSSH
# Connect to screen instance
sudo -u minecraft screen -r [mc-server] # (replace with mc-server_folder)
# View screen instances
sudo -u minecraft screen -ls
# Sudo into the minecraft user's shell
sudo su --shell /bin/bash minecraft
# Move into the instances directory
cd instances
# Create a new folder to house your instance
mkdir server
# Install your minecraft instance, and make sure there is a minecraft_server.jar file.
# If you use Forge servers, you can use the following:
ln -s forge*.jar minecraft_server.jar
# Start and enable (start after boot) the server.
sudo systemctl start minecraft@server
sudo systemctl enable minecraft@server
# Stop server
sudo systemctl stop minecraft@server