Fork me on GitHub

Glassfish установка

Я уже описывал процесс установки контейнера сервлетов - Apache Tomcat. Пришло время описать процесс установки для сервера приложений GlassFish как нибудь доберусь и до WildFly (бывший JBoss) Как я это делал Действия производятся на Ubuntu

Создаём группу (вообще можно создать а можно и не создавать)

1
sudo groupadd java

Создаём юзера для того что бы всё было сикурно

1
2
sudo adduser --home /home/glassfish --system --shell /bin/bash glassfish
sudo usermod -a -G java glassfish

Либо сразу создаём с указанной группой

1
sudo adduser --home /home/glassfish --system --shell /bin/bash --ingroup java glassfish

Ставим jdk я выбрал open но можно взять и от oracle

1
sudo apt-get install openjdk-8-jdk

Качаем сам сервер GlassFish

1
2
cd /tmp
wget -c http://dlc.sun.com.edgesuite.net/glassfish/4.1.1/release/glassfish-4.1.1.zip

Распаковываем

1
unzip glassfish-4.1*zip

Перемещаем туда где он будет теперь "жить"

1
sudo mv glassfish4 /usr/local/bin/

Далее стартовый скрипт для systemd

1
sudo vim /etc/systemd/system/glassfish.service
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
[Unit]
Description = GlassFish Server v4.1
After = syslog.target network.target

[Service]
User=glassfish
ExecStart = /usr/bin/java -jar /usr/local/bin/glassfish4/glassfish/lib/client/appserver-cli.jar start-domain
ExecStop = /usr/bin/java -jar /usr/local/bin/glassfish4/glassfish/lib/client/appserver-cli.jar stop-domain
ExecReload = /usr/bin/java -jar /usr/local/bin/glassfish4/glassfish/lib/client/appserver-cli.jar restart-domain
Type = forking

[Install]
WantedBy = multi-user.target

Включаем автостарт и стартуем

1
2
systemctl enable glassfish.service
systemctl start glassfish.service

И стартовый скрипт для initd

1
sudo vim /etc/init.d/glassfish
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/bash
#
# update-rc.d glassfish defaults
# description: Startup script for Glassfish

GLASSFISH_HOME=/usr/local/bin/glassfish4/bin;
GLASSFISH_OWNER=glassfish;
GLASSFISH_ADMIN=admin;
GLASSFISH_DOMAIN=domain1;
GLASSFISH_PASSWORD=/home/glassfish/.asadminpwdgfish;
export GLASSFISH_HOME GLASSFISH_OWNER GLASSFISH_PASSWORD GLASSFISH_ADMIN GLASSFISH_DOMAIN

start() {
  echo -n "Starting Glassfish: "
  su $GLASSFISH_OWNER -c "$GLASSFISH_HOME/asadmin start-domain --user \
     $GLASSFISH_ADMIN --passwordfile $GLASSFISH_PASSWORD $GLASSFISH_DOMAIN"
     # одна строчка
  echo "done"
}

stop() {
  echo -n "Stopping Glassfish: "
  su $GLASSFISH_OWNER -c "$GLASSFISH_HOME/asadmin stop-domain $GLASSFISH_DOMAIN"
  echo "done"
}

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    stop
    start
    ;;
  *)
    echo $"Usage: Glassfish {start|stop|restart}"
    exit
esac

Ну и не забываем сделать его исполняемым

1
sudo chmod +x /etc/init.d/glassfish

Меняем хозяина каталога

1
sudo chown -R glassfish:java /usr/local/bin/glassfish4

Взлетит ли ново установленный glassfish

1
sudo -u glassfish /usr/local/bin/glassfish4/bin/asadmin start-domain domain1

Если ошибок нет то всё ок Тушим его и настроим автозапуск

1
sudo -u glassfish /usr/local/bin/glassfish4/bin/asadmin stop-domain domain1
1
2
sudo update-rc.d glassfish defaults
sudo update-rc.d glassfish enable

Запускаем уже через стартовый скрипт

1
sudo service glassfish start

Вроде установка закончена осталось настроить админку

Настройка управление GlassFish будет через порт 4848, который по умолчанию слушает только петлю localhost:4848 Так же есть консольный вариант управления asadmin, с помощью которой можно выполнить всё тоже что и через веб и даже больше

1
/usr/local/bin/glassfish4/bin/asadmin --user admin --passwordfile /usr/local/bin/glassfish4/glassfish/domains/domain1/config/admin-keyfile --secure=false

Настройка Enable Secure Admin to access the DAS

Comments