Install JBoss Wildfly on Ubuntu 18.04
How to Install WildFly on Ubuntu Linux
How to Install WildFly Java Application Server with Nginx Reverse Proxy on Ubuntu 20.04
Если курсор просто мигает и ничего не происходит, команды перестали работать, просто нажми Ctrl+C
Обновляем Ubuntu:
sudo apt update
Ставим Open JDK:
sudo apt install default-jdk
Проверяем, что встала:
java -version
Переключаемся на папку opt
(Add-on application software packages):
cd /opt
На WildFly downloads ищем нужную версию сервера:
sudo wget https://download.jboss.org/wildfly/23.0.2.Final/wildfly-23.0.2.Final.tar.gz
Распаковываем архив:
sudo tar xvf wildfly-23.0.2.Final.tar.gz
Переносим распакованное в отдельную папку:
sudo mv wildfly-23.0.2.Final /opt/wildfly
Чтобы не запускать WildFly под super user создадим группу wildfly
и пользователя wildfly
:
sudo groupadd wildfly
sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
при этом домашняя директория для пользователя будет /opt/wildfly
Изменяем права доступа к папке с WildFly, выполнять следующие команды только в папке /opt:
sudo chown -R wildfly: wildfly
sudo chmod o+x /opt/wildfly/bin/
Создаем сервисный файл для WildFly:
cd /etc/
sudo mkdir wildfly
Копируем файл конфигурации:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
Копируем launch script:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
Разрешаем запуск launch script для пользователя wildfly:
sudo chown wildfly: /opt/wildfly/bin/launch.sh
Копируем сервисный файл:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
Открываем файл для редактирования:
sudo nano /etc/systemd/system/wildfly.service
В блоке [Service]
после строки User=WildFly
добавляем строку Group=wildfly
Ctrl+O - сохранить
Enter
Ctrl+x - выйти
Перезапускаем systemd Manager и разрешаем запуск wildfly:
sudo systemctl daemon-reload
sudo systemctl enable wildfly
Запускаем WildFly как сервис:
sudo systemctl start wildfly
Проверяем статус сервиса:
sudo systemctl status wildfly
Для выхода
надо нажать Q
Можно просмотреть часть файла логов WildFly:
sudo tail -f /opt/wildfly/standalone/log/server.log
Для выхода
надо нажать Ctrl+C.
Проверяем можно ли подключиться через браузер: http://localhost:8080/ (к примеру)
По умолчанию доступ к админской консоли wildfly возможно только с localhost.
Для удаленного доступа нужно настроить возможность подключения.
sudo nano /etc/wildfly/wildfly.conf
Установить новое значение под комментарием - # The address console to bind to
WILDFLY_MANAGEMENT_CONSOLE_BIND=0.0.0.0
Далее редактируем скрипт для запуска:
sudo nano /opt/wildfly/bin/launch.sh
В строки
$WILDFLY_HOME/bin/domain.sh -c $2 -b $3
$WILDFLY_HOME/bin/standalone.sh -c $2 -b $3
добавляется: -bmanagement $4
Итоговый текст:
#!/bin/bash
if [ "x$WILDFLY_HOME" = "x" ]; then
WILDFLY_HOME="/opt/wildfly"
fi
if [[ "$1" == "domain" ]]; 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
затем
Ctrl+O
Enter
Ctrl+x
Далее редактируем сервисный файл:
sudo nano /etc/systemd/system/wildfly.service
В строку
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND
добавляется: $WILDFLY_MANAGEMENT_CONSOLE_BIND
Итоговый текст:
[Unit]
Description=The WildFly Application Server
After=syslog.target network.target
Before=httpd.service
[Service]
Environment=LAUNCH_JBOSS_IN_BACKGROUND=1
EnvironmentFile=-/etc/wildfly/wildfly.conf
User=wildfly
Group=wildfly
LimitNOFILE=102642
PIDFile=/var/run/wildfly/wildfly.pid
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_MANAGEMENT_CONSOLE_BIND
StandardOutput=null
[Install]
WantedBy=multi-user.target
затем
Ctrl+O
Enter
Ctrl+x
Так как были изменены системные файлы необходимо рестартануть systemd manager:
sudo systemctl daemon-reload
А затем и service wildfly:
sudo systemctl restart wildfly
Теперь нужно добавить management user для WildFly:
sudo /opt/wildfly/bin/add-user.sh
Вводим логин и пароль. Когда спросит разрешать удаленный доступ или нет, ставим да, если нужно.
Далее рестартуем WildFly:
sudo systemctl restart wildfly