Installing as a service

We will deploy our application to an AWS EC2 instance, and we will deploy it as a standalone .jar file and use an embedded application server, which, by default, is the Tomcat server. It would be better that we simply use a command such as the following to start and stop the application:

service taskagile start|stop

We can achieve this by installing the application as an init.d service. To do that, first of all, we will need to make the .jar file fully executable by adding a configuration to spring-boot-maven-plugin in the pom.xml file:

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
<executions>
...
</executions>
</plugin>

Once we deploy the application to the server, we will put it in /opt/taskagile/app.jar. To install the application as an init.d service, we will need to create a symlink, like the following:

$ sudo ln -s /opt/taskagile/app.jar /etc/init.d/taskagile

With this symlink, we are able to do the following:

  • Start the service as the user who owns the jar file
  • Track the application's PID with the /var/run/taskagile/taskagile.pid file
  • Write logs to /var/log/taskagile.log
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.116.14.245