[Unit]
Description=Minecraft Server
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
ExecReload=/usr/bin/screen -S minecraft -X stuff \"reload^M\"
ExecStart=/usr/bin/screen -DmS minecraft /usr/bin/java -Xms2G -Xmx2G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -jar minecraft.jar --nogui
ExecStop=/usr/bin/screen -S minecraft -X stuff \"save-all^M\"
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -S minecraft -X stuff \"stop^M\"
ExecStop=/bin/sleep 5
ProtectControlGroups=true
ProtectHome=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectSystem=full
PrivateDevices=true
PrivateUsers=true
User=minecraft
Group=minecraft
WorkingDirectory=/srv/minecraft