[Guide] How to ACTUALLY install MineOS [CentOS Stream 8]

Every guide, that I’ve seen on here, either officially or unofficially, does not seem to work, one way or another.

This is what worked for me and has gotten me a successfully running Minecraft server with the MineOS Web-UI for a couple of months and counting.

It may not be the most optimized, or the best way to do this (notably CentOS 8 being officially depreciated), but it’s what worked for me, and hopefully can help those with trouble installing MineOS and just want to get a Minecraft server up and running.

  1. Prerequisites:
    1.1. Download the Centos Stream 8 iso to a USB from here and install onto your target machine (Its easy as it has a GUI)
    1.2. Pick the ‘Server with GUI’ option as the Base enviroment when they ask for your software selection, as it made it easy and has some cool features

  2. Get into root

sudo -i
  1. Install nvm (makes installing node easier)
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash 
source ~/.bashrc
nvm install 10 

// node 10 is the only one that I found to work, going up or down broke things
  1. Add community repo (idk is it like the AUR?? Anyway some stuff didnt work until i did this)
dnf config-manager --set-enabled powertools
dnf install epel-release epel-next-release
  1. Install MineOS prerequisites
yum update -y
yum upgrade -y
yum -y install git wget openssl openssl-devel gcc-c++ make rsync screen rdiff-backup nodejs
  1. Install the webui
git config core.filemode false
chmod +x generate-sslcert.sh mineos_console.js webui.js
cp mineos.conf /etc/mineos.conf
cd /usr/games/minecraft
npm install --unsafe-perm

//If failed, do `nvm use 10` and `npm rebuild --unsafe-perm`. Also consider doing `npm-install node-gyp` if it still doesnt work
  1. Generate SSL cert
./generate-sslcert.sh
  1. Make stuff executable
chmod +x ./webui.js
  1. Run the thing
systemctl enable mineos
systemctl start mineos
  1. Check that the service is running
systemctl status mineos
  1. Testing:
    Try to do ./webui.js. If it works, run
chmod +x ./reset_webui.sh
./reset_webui.sh
  1. Firewall stuff (I like ufw)
yum -y ufw
systemctl enable ufw
systemctl start ufw

ufw allow ssh
ufw allow 25565
ufw allow 8443
  1. Install Java 17 (for minecraft 1.20)
    For other java versions, do basically the same thing but with the correct java version
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm
yum -y install ./jdk-17_linux-x64_bin.rpm
  1. Reboot before you try it out
reboot now