Como automatizar um serviço Java para iniciar se o servidor for reiniciado

Como automatizar um serviço Java para iniciar se o servidor for reiniciado

Normalmente executo meu serviço Java na caixa CentOS usando nohupo seguinte:

nohup java -jar myapp-0.0.1-SNAPSHOT.jar server my-configure.yml > outfile &

No entanto, se o servidor for reiniciado, o serviço não será reiniciado sozinho. Existe uma maneira automatizada no CentOS de iniciar este serviço Java na inicialização?

Responder1

Copie o script para /etc/rc.d/rc.local, reinicie e ele será executado na inicialização. Por exemplo

[vagrant@localhost ~]$ cat /etc/rc.d/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

sudo touch /tmp/helloworld

cria o/tmp/olámundoarquivo assim que o sistema for reinicializado:

[vagrant@localhost ~]$ ls /tmp/
helloworld 

30.3. Executando programas adicionais na inicialização

The /etc/rc.d/rc.local script is executed by the init command at boot time or when changing runlevels. Adding commands to the bottom of this script is an easy way to perform necessary tasks like starting special services or initialize devices without writing complex initialization scripts in the /etc/rc.d/init.d/ directory and creating symbolic links.

The /etc/rc.serial script is used if serial ports must be setup at boot time. This script runs setserial commands to configure the system's serial ports. Refer to the setserial man page for more information. 

informação relacionada