Aqui está uma maneira fácil de fazer isso usando o SysVInit. Instruções:
-
Crie o script de início e parada do seu aplicativo. Coloque em algum diretório, no nosso exemplo é:
- Iniciar script:
/usr/local/bin/myapp-start.sh
- Parar script:
/usr/local/bin/myapp-stop.sh
Cada um fornecerá as instruções para executar / parar o aplicativo. Por exemplo, o conteúdo
myapp-start.sh
pode ser tão simples quanto o seguinte:#!/bin/bash java -jar myapp.jar
Para o script de parada, pode ser algo assim:
#!/bin/bash # Grabs and kill a process from the pidlist that has the word myapp pid='ps aux | grep myapp | awk '{print }'' kill -9 $pid
- Iniciar script:
-
Crie o seguinte script (
myscript
) e coloque-o em/etc/init.d
./etc/init.d/myscript
content:#!/bin/bash # MyApp # # description: bla bla case in start) /bin/bash /usr/local/bin/myapp-start.sh ;; stop) /bin/bash /usr/local/bin/myapp-stop.sh ;; restart) /bin/bash /usr/local/bin/myapp-stop.sh /bin/bash /usr/local/bin/myapp-start.sh ;; esac exit 0
-
Coloque o script para começar com o sistema (usando SysV). Basta executar o seguinte comando ( como root ):
update-rc.d myscript defaults
PS: Eu sei que o Upstart é ótimo e bla bla, mas prefiro o antigo sistema init do SysV.