A step by step guide to set up your own Minecraft server on AWS can be found at franok.de/techblog
For setup instructions using Ansible, refer to the blog post Deploying a Minecraft Server on AWS with Ansible and the respective ansible branch of this repository.
A spigot-based mc-server wrapped in paper.
When updating paper, also plugins need to be updated (search on the internet which plugin version is compatible with with server version!)
some useful plugins that won't ruin survival gaming:
- https://dev.bukkit.org/projects/multiverse-portals
- https://dev.bukkit.org/projects/multiverse-core
- https://luckperms.net/download
- https://dev.bukkit.org/projects/worldedit
- https://dev.bukkit.org/projects/worldguard
Download via wget/curl not possible due to redirects, so download via browser and copy the jar files into the s3 bucket web interface, into the server's plugins/ folder (e.g. use scp
command)
aws ec2 start-instances --instance-ids i-0123456789454ab3c
aws ec2 describe-instance-status --instance-id i-0123456789454ab3c
aws ec2 stop-instances --instance-ids i-0123456789454ab3c
get public ipv4 for ec2 instance:
aws ec2 describe-instances --instance-id i-0123456789454ab3c | grep -i publicip
aws ec2 describe-instances --instance-id i-0123456789454ab3c | jq '.Reservations[0].Instances[0].PublicIpAddress'
ssh -i <path/to/keypair.pem> ec2-user@<public-ipv4>
# remove existing backup tar file, if exists:
rm -v /minecraft/mc-server.tar
# zip latest server data into tar file:
tar cf /minecraft/mc-server.tar /minecraft/mc-server
# copy to s3:
aws s3 cp /minecraft/mc-server.tar s3://<s3-bucket-name>/backup/$(date '+%Y-%m-%d')/
systemctl status minecraft
tail -f /minecraft/mc-server/logs/latest.log