Android

Как установить wildfly (jboss) на Debian 9

WildFly vs JBoss EAP: How Red Hat's Java application servers compare

WildFly vs JBoss EAP: How Red Hat's Java application servers compare

Оглавление:

Anonim

WildFly, ранее известный как JBoss, - это кроссплатформенная среда исполнения приложений с открытым исходным кодом, написанная на Java, которая помогает вам создавать удивительные приложения. WildFly является гибким, легким и основан на подключаемых подсистемах, которые могут быть добавлены или удалены по мере необходимости.

В этом руководстве мы познакомим вас с шагами, необходимыми для установки сервера приложений WildFly в Debian 9.

Предпосылки

Пользователь, в который вы вошли, должен иметь права sudo для установки пакетов.

Установка Java OpenJDK

WildFly требует Java для установки. Мы установим OpenJDK, который по умолчанию является Java-разработкой и средой исполнения в Debian 9:

sudo apt update sudo apt install default-jdk

Создание пользователя

Создайте нового системного пользователя и группу с именем wildfly с домашним каталогом /opt/wildfly который будет запускать сервис WildFly:

sudo groupadd -r wildfly sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly

Установка WildFly

На момент написания этой статьи последняя версия WildFly - 16.0.0 . Прежде чем перейти к следующему шагу, вы должны проверить страницу загрузки для новой версии. Если есть новая версия, замените переменную WILDFLY_VERSION в приведенной ниже команде.

Загрузите архив WildFly в каталог /tmp используя следующую команду wget :

WILDFLY_VERSION=16.0.0.Final wget https://download.jboss.org/wildfly/$WILDFLY_VERSION/wildfly-$WILDFLY_VERSION.tar.gz -P /tmp

После завершения загрузки извлеките файл tar.gz и переместите его в каталог /opt :

sudo tar xf /tmp/wildfly-$WILDFLY_VERSION.tar.gz -C /opt/

Создайте символическую ссылку wildfly которая будет указывать на каталог установки WildFly:

sudo ln -s /opt/wildfly-$WILDFLY_VERSION /opt/wildfly

WildFly запускается как пользователь wildfly которому необходим доступ к каталогу установки WildFly. Измените владельца каталога на пользователя и группу wildfly :

sudo chown -RH wildfly: /opt/wildfly

Конфигурирование Systemd

В пакет WildFly входят файлы, необходимые для запуска WildFly в качестве службы.

Начните с создания каталога, в котором будет храниться файл конфигурации WildFly:

sudo mkdir -p /etc/wildfly

Скопируйте файл конфигурации в каталог /etc/wildfly :

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/

Этот файл позволяет указать режим WildFly и адрес привязки. По умолчанию WildFly будет работать в автономном режиме и будет прослушивать все интерфейсы. Отредактируйте файл в соответствии с вашими потребностями.

/etc/wildfly/wildfly.conf

# The configuration you want to run WILDFLY_CONFIG=standalone.xml # The mode you want to run WILDFLY_MODE=standalone # The address to bind to WILDFLY_BIND=0.0.0.0

Затем скопируйте скрипт launch.sh WildFly в launch.sh /opt/wildfly/bin/ :

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/

Скрипты внутри каталога bin должны иметь исполняемый флаг:

sudo sh -c 'chmod +x /opt/wildfly/bin/*.sh'

Последний шаг - скопировать файл модуля systemd с именем в каталог /etc/systemd/system/ :

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/

Перезагрузите конфигурацию системного менеджера:

sudo systemctl daemon-reload

Запустите и включите службу WildFly для автоматического запуска во время загрузки:

sudo systemctl start wildfly sudo systemctl enable wildfly

Проверьте статус службы с помощью следующей команды:

sudo systemctl status wildfly

* wildfly.service - The WildFly Application Server Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: enabled) Active: active (running) since Sun 2019-02-17 04:59:39 PST; 2s ago Main PID: 10005 (launch.sh) Tasks: 62 (limit: 2319) CGroup: /system.slice/wildfly.service

Настройка брандмауэра

Если ваш сервер защищен брандмауэром и вы хотите получить доступ к интерфейсу WildFly извне вашей локальной сети, вам нужно открыть порт 8080 .

Чтобы разрешить трафик через порт 8080 введите следующую команду:

sudo ufw allow 8080/tcp При запуске приложения WildFly в производственной среде, скорее всего, у вас будет балансировщик нагрузки или обратный прокси-сервер, и рекомендуется ограничить доступ к порту 8080 только для вашей внутренней сети.

Настройка аутентификации WildFly

Теперь, когда WildFly установлен и запущен, следующим шагом является создание пользователя, который сможет подключаться с помощью консоли администрирования или удаленно с помощью CLI.

Чтобы добавить нового пользователя, используйте скрипт add-user.sh который находится в каталоге bin WildFly:

sudo /opt/wildfly/bin/add-user.sh

Вас спросят, какого типа пользователя вы хотите добавить:

What type of user do you wish to add? a) Management User (mgmt-users.properties) b) Application User (application-users.properties) (a):

Выберите и нажмите Enter :

Далее скрипт предложит вам ввести данные нового пользователя:

Enter the details of the new user to add. Using realm 'ManagementRealm' as discovered from the existing property files. Username: linuxize Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file. - The password should be different from the username - The password should not be one of the following restricted values {root, admin, administrator} - The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s) Password: Re-enter Password: What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none): About to add user 'linuxize' for realm 'ManagementRealm' Is this correct yes/no? yes Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-users.properties' Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-users.properties' Added user 'linuxize' with groups to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-groups.properties' Added user 'linuxize' with groups to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-groups.properties' Is this new user going to be used for one AS process to connect to another AS process? eg for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls. yes/no? yes To represent the user add the following to the server-identities definition

Новый пользователь будет добавлен в файлы свойств, используемые для аутентификации.

Тестирование установки WildFly

Чтобы получить доступ к странице WildFly по умолчанию, откройте браузер и введите: http://:8080 http://:8080

Если установка прошла успешно, появится экран, подобный следующему:

Откройте wildfly.conf и добавьте WILDFLY_CONSOLE_BIND=0.0.0.0 в конец файла.

/etc/wildfly/wildfly.conf

# The configuration you want to run WILDFLY_CONFIG=standalone.xml # The mode you want to run WILDFLY_MODE=standalone # The address to bind to WILDFLY_BIND=0.0.0.0 # The address console to bind to WILDFLY_CONSOLE_BIND=0.0.0.0

Откройте launch.sh и отредактируйте выделенные строки:

/opt/wildfly/bin/launch.sh

#!/bin/bash if; then WILDFLY_HOME="/opt/wildfly" fi if]; then $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4 else $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4 fi

Перезапустите службу, чтобы изменения вступили в силу:

sudo systemctl restart wildfly

Откройте wildfly.service и отредактируйте выделенные строки:

/etc/systemd/system/wildfly.service

Description=The WildFly Application Server After=syslog.target network.target Before=httpd.service Environment=LAUNCH_JBOSS_IN_BACKGROUND=1 EnvironmentFile=-/etc/wildfly/wildfly.conf User=wildfly LimitNOFILE=102642 PIDFile=/var/run/wildfly/wildfly.pid ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND StandardOutput=null WantedBy=multi-user.target

Создайте каталог /var/run/wildfly и установите правильные разрешения:

sudo mkdir /var/run/wildfly/ sudo chown wildfly: /var/run/wildfly/

Перезагрузите конфигурацию системного менеджера:

sudo systemctl daemon-reload

Перезапустите сервис WildFly, запустив:

sudo systemctl restart wildfly

Предполагая, что ваш брандмауэр не блокирует порт 9990 , вы должны иметь доступ к консоли администрирования WildFly по адресу http://:9990/console http://:9990/console .

Вывод

Вы успешно установили WildFly на свой сервер Debian 9. Вам следует посетить официальную документацию WildFly и узнать больше о возможностях WildFly.

Java Debian Debian