Skip to content

Instantly share code, notes, and snippets.

@adessein
Forked from marlonbernardes/run-jar-as-a-service.md
Created January 25, 2020 21:08
Show Gist options
  • Save adessein/69ffb6b91c68ac1b42cf5241795ac8ac to your computer and use it in GitHub Desktop.
Save adessein/69ffb6b91c68ac1b42cf5241795ac8ac to your computer and use it in GitHub Desktop.
How to make a jar file run on startup
  1. Create the start and stop scripts of your application.
  • Example:

myapp-start.sh

#!/bin/bash
cd /home/ubuntu/myapp/
java -jar myapp.jar --server.port=8888 &

myapp-stop.sh

#!/bin/bash
sudo fuser 8888/tcp -k || true
  1. Create a file named myapp inside /etc/init.d/
#!/bin/bash

case $1 in
    start)
        /bin/bash /home/ubuntu/scripts/myapp-start.sh
    ;;
    stop)
        /bin/bash /home/ubuntu/scripts/myapp-stop.sh  
    ;;
    restart)
        /bin/bash /home/ubuntu/scripts/myapp-stop.sh
        /bin/bash /home/ubuntu/scripts/myapp-start.sh
    ;;
esac
exit 0
  1. Mark myapp as executable:
cd /etc/init.d/
sudo chmod +x myapp 
  1. Make the script start on boot:
sudo update-rc.d myapp defaults 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment