Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Falchio/46558ee1418089b2bc201762419036f2 to your computer and use it in GitHub Desktop.
Save Falchio/46558ee1418089b2bc201762419036f2 to your computer and use it in GitHub Desktop.

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

Обновляем 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/

команда chmod

Запуск как сервис

Создаем сервисный файл для 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment