4.9. Wrapper
Introduction
The Karaf Wrapper (for service wrapper) makes it possible to install Karaf as a Windows Service. Likewise, the scripts shipped with Karaf also make it very easy to install Karaf as a daemon process on Unix systems.
The Wrapper correctly handles "user's log outs" under Windows, service dependencies, and the ability to run services which interact with the desktop.
Installation
Karaf Wrapper is an optional feature. To install it, simply type:
karaf@root> features:install wrapper
Once installed, wrapper feature will provide wrapper:install
new command in the Karaf shell:
karaf@root> wrapper:install --help DESCRIPTION wrapper:install Install the container as a system service in the OS. SYNTAX wrapper:install [options] OPTIONS -s, --start-type Mode in which the service is installed. AUTO_START or DEMAND_START (Default: AUTO_START) (defaults to AUTO_START) --help Display this help message -n, --name The service name that will be used when installing the service. (Default: karaf) (defaults to karaf) -d, --display The display name of the service. -D, --description The description of the service. (defaults to )
Using wrapper:install
, you can install Karaf as a service.
For instance, to register Karaf as a service (depending of the running OS), in automatic start mode, simply type:
karaf@root> wrapper:install -s AUTO_START -n KARAF -d Karaf -D "Karaf Service"
For instance, on Linux, wrapper:install
command will do:
karaf@root> wrapper:install -s AUTO_START -n KARAF -d Karaf -D "Karaf Service" Creating file: /home/onofreje/apache-karaf-2.1.3/bin/KARAF-wrapper Creating file: /home/onofreje/apache-karaf-2.1.3/bin/KARAF-service Creating file: /home/onofreje/apache-karaf-2.1.3/etc/KARAF-wrapper.conf Creating file: /home/onofreje/apache-karaf-2.1.3/lib/libwrapper.so Creating file: /home/onofreje/apache-karaf-2.1.3/lib/karaf-wrapper.jar Creating file: /home/onofreje/apache-karaf-2.1.3/lib/karaf-wrapper-main.jar Setup complete. You may want to tweak the JVM properties in the wrapper configuration file: /home/onofreje/apache-karaf-2.1.3/etc/KARAF-wrapper.conf before installing and starting the service. The way the service is installed depends upon your flavor of Linux. On Redhat/Fedora/CentOS Systems: To install the service: $ ln -s /home/onofreje/apache-karaf-2.1.3/bin/KARAF-service /etc/init.d/ $ chkconfig KARAF-service --add To start the service when the machine is rebooted: $ chkconfig KARAF-service on To disable starting the service when the machine is rebooted: $ chkconfig KARAF-service off To start the service: $ service KARAF-service start To stop the service: $ service KARAF-service stop To uninstall the service : $ chkconfig KARAF-service --del $ rm /etc/init.d/KARAF-service On Ubuntu/Debian Systems: To install the service: $ ln -s /home/onofreje/apache-karaf-2.1.3/bin/KARAF-service /etc/init.d/ To start the service when the machine is rebooted: $ update-rc.d KARAF-service defaults To disable starting the service when the machine is rebooted: $ update-rc.d -f KARAF-service remove To start the service: $ /etc/init.d/KARAF-service start To stop the service: $ /etc/init.d/KARAF-service stop To uninstall the service : $ rm /etc/init.d/KARAF-service