Chapter 7. Running and removing JBoss EAP as a service on RHEL


7.1. JBoss EAP as a service on RHEL

When using the archive, JBoss EAP installation manager, and GUI installation methods, you can configure JBoss EAP to run as a service in Red Hat Enterprise Linux RHEL. This enables the JBoss EAP service to start automatically when the RHEL server starts.

Note

A server installed using RPM is already configured to run as a service.

You can use one of two daemon services:

  • Systemd (System daemon). Systemd scripts are supplied with a basic configuration, and are intended to be used for standalone and domain mode instances.
  • Init, also known as "System V init", or SysVinit. Init scripts are deprecated in favor of Systemd scripts.

You can configure JBoss EAP to run as a Systemd service in Red Hat Enterprise Linux RHEL. This enables the JBoss EAP service to start automatically when the RHEL server starts. You must generate a systemd unit file with the username:groupname to launch the server.

Prerequisites

  • You have downloaded and Installed JBoss EAP.
  • You have set the JAVA_HOME system environment variable.
  • You have administrator access to the RHEL server.

Procedure

  1. Create the user and group that will be used to launch the server:

    $ sudo groupadd -r groupname
    $ sudo useradd -r -g groupname -d $EAP_HOME -s /sbin/nologin username
    $ sudo chown -R username:groupname $EAP_HOME
    Copy to Clipboard Toggle word wrap
    Note

    The commands in this procedure require root privileges to run. Either run su - to switch to the root user or preface the commands with sudo.

  2. Generate the systemd unit file:

    Standalone mode

    $ sudo cd $EAP_HOME/bin/systemd
    $ sudo ./generate_systemd_unit.sh standalone username groupname
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo cd $EAP_HOME/bin/systemd
    $ sudo ./generate_systemd_unit.sh domain username groupname
    Copy to Clipboard Toggle word wrap

  3. Configure the start-up options in the jboss-eap-standalone.conf or jboss-eap-domain.conf by using a text editor and set the options for your JBoss EAP installation:

    Standalone mode

    $ sudo vim $EAP_HOME/bin/systemd/jboss-eap-standalone.conf
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo vim $EAP_HOME/bin/systemd/jboss-eap-domain.conf
    Copy to Clipboard Toggle word wrap

  4. Copy the systemd unit file and the server configuration file, and reload the service daemon:

    Standalone mode

    $ sudo cp $EAP_HOME/bin/systemd/jboss-eap-standalone.service $(pkg-config systemd --variable=systemd_system_unit_dir)
    $ sudo cp $EAP_HOME/bin/systemd/jboss-eap-standalone.conf /etc/sysconfig/
    $ sudo systemctl daemon-reload
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo cp $EAP_HOME/bin/systemd/jboss-eap-domain.service $(pkg-config systemd --variable=systemd_system_unit_dir)
    $ sudo cp $EAP_HOME/bin/systemd/jboss-eap-domain.conf /etc/sysconfig/
    $ sudo systemctl daemon-reload
    Copy to Clipboard Toggle word wrap

  5. Enable the service:

    Standalone mode

    $ sudo systemctl enable jboss-eap-standalone.service
    $ sudo systemctl start jboss-eap-standalone.service
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo systemctl enable jboss-eap-domain.service
    $ sudo systemctl start jboss-eap-domain.service
    Copy to Clipboard Toggle word wrap

Additional resources

  • For more information about controlling the state of services, see Management system services in the RHEL Configuring basic system settings guide.
  • For more information about viewing error logs, see Bootup logging in the JBoss EAP Configuration Guide.

7.3. Removing JBoss EAP Systemd service on RHEL

You can remove the Systemd services associated with your server instance. The next steps describe how to do it.

Prerequisites

  • You have JBoss EAP installed as a Systemd service.

Procedure

  1. When the service is running, open a terminal and stop the service with one of the following commands:

    Standalone mode

    $ sudo systemctl stop jboss-eap-standalone.service
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo systemctl stop jboss-eap-domain.service
    Copy to Clipboard Toggle word wrap

    Note

    The commands in this procedure require root privileges to run. Either run su - to switch to the root user or preface the commands with sudo.

  2. Disable the service:

    Standalone mode

    $ sudo systemctl disable jboss-eap-standalone.service
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo systemctl disable jboss-eap-domain.service
    Copy to Clipboard Toggle word wrap

  3. Delete the configuration file and startup script:

    Standalone mode

    $ sudo rm "$(pkg-config systemd --variable=systemd_system_unit_dir)/jboss-eap-standalone.service"
    $ sudo rm "/etc/sysconfig/jboss-eap-standalone.conf"
    $ sudo systemctl daemon-reload
    Copy to Clipboard Toggle word wrap

    Domain mode

    $ sudo rm "$(pkg-config systemd --variable=systemd_system_unit_dir)/jboss-eap-domain.service"
    $ sudo rm "/etc/sysconfig/jboss-eap-domain.conf"
    $ sudo systemctl daemon-reload
    Copy to Clipboard Toggle word wrap

7.4. Running JBoss EAP as an Init service on RHEL

Note

Init scripts are deprecated in favor of Systemd scripts. Additional packages may need to be installed to provide this functionality. For example, when using RHEL 9, you must install the initscripts package to use Init services.

You can configure JBoss EAP to run as a service in Red Hat Enterprise Linux RHEL. This enables the JBoss EAP service to start automatically when the RHEL server starts.

Prerequisites

  • You have downloaded and Installed JBoss EAP.
  • You have set the JAVA_HOME system environment variable.
  • You have administrator access to the RHEL server.
  • When using RHEL, you have the initscripts package installed.

Procedure

  1. Configure the start-up options in the jboss-eap.conf file by opening the jboss-eap.conf in a text editor and set the options for your JBoss EAP installation.
  2. Copy the service initialization and configuration files into the system directories:

    1. Copy the modified service configuration file to the /etc/default directory.

      Note

      The commands in this procedure require root privileges to run. Either run su - to switch to the root user or preface the commands with sudo.

      $ sudo cp EAP_HOME/bin/init.d/jboss-eap.conf /etc/default
      Copy to Clipboard Toggle word wrap
    2. Copy the service startup script to the /etc/init.d directory and give it execute permissions:

      $ sudo cp EAP_HOME/bin/init.d/jboss-eap-rhel.sh /etc/init.d
      $ sudo chmod +x /etc/init.d/jboss-eap-rhel.sh
      $ sudo restorecon /etc/init.d/jboss-eap-rhel.sh
      Copy to Clipboard Toggle word wrap
  3. Add the new jboss-eap-rhel.sh service to the list of automatically started services using the chkconfig service management command:

    $ sudo chkconfig --add jboss-eap-rhel.sh
    Copy to Clipboard Toggle word wrap
  4. Verify that the service has been installed correctly by using the following command:

    $ sudo systemctl start jboss-eap-rhel
    Copy to Clipboard Toggle word wrap
  5. Optional: To make the service start automatically when the RHEL server starts, run the following command:

    $ sudo chkconfig jboss-eap-rhel.sh on
    Copy to Clipboard Toggle word wrap

Verification

  • To check the permissions of a file, enter the ls -l command in the directory containing the file.
  • To check that the automatic service start is enabled, enter the following command:

    $ sudo chkconfig --list jboss-eap-rhel.sh
    Copy to Clipboard Toggle word wrap

Additional resources

  • For more information about controlling the state of services, see Management system services in the RHEL Configuring basic system settings guide.
  • For more information about viewing error logs, see Bootup logging in the RHEL Configuration Guide.

7.5. Removing JBoss EAP Init service on RHEL

You can remove the Systemd services associated with your server instance. The next steps describe how to do it.

Prerequisites

  • You have JBoss EAP installed as an Init service.

Procedure

  1. When the service is running, open a terminal and stop the service with one of the following command:

    $ sudo service jboss-eap-rhel.sh stop
    Copy to Clipboard Toggle word wrap
    Note

    The commands in this procedure require root privileges to run. Either run su - to switch to the root user or preface the commands with sudo.

  2. Remove JBoss EAP from the list of services:

    $ sudo chkconfig --del jboss-eap-rhel.sh
    Copy to Clipboard Toggle word wrap
  3. Delete the configuration file and startup script:

    $ sudo rm /etc/init.d/jboss-eap-rhel.sh
    $ sudo rm /etc/default/jboss-eap.conf
    Copy to Clipboard Toggle word wrap
Back to top
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Theme

© 2025 Red Hat