Для промышленной эксплуатации
Установка
Помимо установки lsFusion эти программы / скрипты установки та кже устанавливают OpenJDK, PostgreSQL и Tomcat. При этом Tomcat встраивается в установку lsFusion Client, а OpenJDK и PostgreSQL устанавливаются отдельно (в частности, в отдельные папки).
- Windows
- Linux
Исполняемые exe файлы: lsFusion 6.0-beta0 (OpenJDK 21.0.3, PostgreSQL 16.3, Tomcat 9.0.89, IntelliJ IDEA Community Edition 2024.1.4)
В дальнейшем $INSTALL_DIR$
- папка, выбранная при установке lsFusion (по умолчанию Program Files/lsFusion <версия>
). Также предполагается, что все параметры (порты, имя веб-контекста) оставлены равными по умолчанию.
Bash скрипты с использованием dnf/apt (в качестве минорных версий используются последние стабильные):
lsFusion 6 Server & Client (+ OpenJDK 11, PostgreSQL 16, Tomcat 9.0.89):
ОС | Команда / Скрипт |
---|---|
RHEL 8+ / CentOS 8+ / Fedora 35+ | source <(curl -s https://download.lsfusion.org/dnf/install-lsfusion6) |
Ubuntu 18+ / Debian 9+ | source <(curl -s https://download.lsfusion.org/apt/install-lsfusion6) |
После установки
Порты
После того как установка завершится, по умолчанию, на компьютере будут локально установлены и запущены в качестве служб:
- сервер БД (PostgreSQL) на порту
5432
- сервер приложений (Server) на порту
7652
- веб-сервер (Client) на порту
8080
Установка / обновление приложения
Для того чтобы загрузить разработанную логику на установленный сервер приложений (Server) необходимо:
Поместить разработанные на языке lsFusion модули в виде файлов с расширением lsf в папку находящуюся в classpath сервера (значение по умолчанию при автоматической установке см. ниже). Кроме того туда необходимо поместить остальные файлы ресурсов (если они есть, например, файлы отчетов, скомпилированные Java файлы, картинки и т.п.). Допускается помещать эти файлы в подпапки classpath'а, а также внутри jar-файлов (zip-архивов с расширением jar). После того как все файлы скопированы, необходимо перезапустить сервер.
Classpath сервера по умолчанию устанавливается равным $APP_DIR$;$APP_DIR$/*;server.jar
, то есть папка $APP_DIR$
и все ее подпапки, все jar-файлы в папке $APP_DIR$
(но не в подпапках), а также jar-файл самого сервера приложений.
- Windows
- Linux
$APP_DIR$
при этом равен $INSTALL_DIR$/lib
$APP_DIR$
при этом равен /var/lib/lsfusion
Сервер приложений инсталлируется и запускается под автоматически создаваемым непривилегированным пользователем lsfusion
, соответственно, файлы в этой папке должны быть доступны этому пользователю на чтение.
Установка / обновление клиентов
Для того чтобы дать доступ пользователям к установленной системе необходимо:
Отправить пользователям ссылку http://<сетевой адрес веб-сервера (Client)>:8080
. При открытии этой ссылки, пользователь, по умолчанию, будет перенаправлен на страницу логина, где он, в свою очередь, при необходимости, может установить себе десктоп-клиент через Java Web Start, предварительно установив себе Java (JDK) (например, по этой ссылке с регистрацией или по этой - без). Обновление веб и десктоп-клиентов происходит автоматически в месте с обновлением веб-сервера (Client).
Под Windows также можно воспользоваться программами установки десктоп клиента (файлы lsfusion-desktop-*
с нужной версией и разрядностью ОС). Однако в отличие от установки при помощи Java Web Start, установленный таким образом десктоп-клиент не будет автоматически обновляться. Соответственно для его ручного обновления необходимо скачать файл новой версии десктоп клиента (lsfusion-client-6.<новая версия>.jar
) с центрального сервера и заместить им файл $INSTALL_DIR$/client.jar
.
Все пути и команды ниже приведены для мажорной версии платформы номер 6 (соответственно для других версий необходимо просто заменить 6 на нужное число, например lsfusion6-server
→ lsfusion11-server
)
- Windows
- Linux
Все пути по умолчанию
Пути изменены (в частности при помощи symlink'ов) в соответствии с идеологией Linux
Обновление
Программы устанавливаемые отдельно (OpenJDK, PostgreSQL) обновляются также отдельно (более подробная об этом процессе в документации к соответствующим программам).
- Windows
- Linux
Компоненты платформы также обновляются отдельно друг от друга. Чтобы сделать это, необходимо cкачать файл новой версии компоненты с центрального сервера и заместить им следующий файл:
Компонент | Файлы |
---|---|
Сервер приложений (Server) | Файл на центральном сервере: lsfusion-server-6.<новая версия>.jar Замещаемый файл: $INSTALL_DIR$/Server/server.jar |
Веб-сервер (Client) | Файл на центральном сервере: lsfusion-client-6.<новая версия>.war Замещаемый файл: $INSTALL_DIR$/Client/webapps/ROOT.war Для обновления Tomcat, необходимо скачать архив с новой версией Tomcat и разархивировать его в папку $INSTALL_DIR$/Client без каталога webapps и файла параметров запуска |
Компоненты платформы также обновляются отдельно друг от друга. Чтобы сделать это, необходимо выполнить команду:
Сервер приложений (Server)
ОС | Команда |
---|---|
RHEL 8+ / CentOS 8+ / Fedora 35+ | dnf update lsfusion6-server |
Ubuntu 18+ / Debian 9+ | apt update lsfusion6-server |
Веб-сервер (Client)
ОС | Команда |
---|---|
RHEL 8+ / CentOS 8+ / Fedora 35+ | dnf update lsfusion6-client |
Ubuntu 18+ / Debian 9+ | apt update lsfusion6-client |
Нестабильные версии
Обновление на конкретную SNAPSHOT-версию платформы : source <(curl -s https://download.lsfusion.org/apt/update-lsfusion6) <platform version>
.
Например, source <(curl -s https://download.lsfusion.org/apt/update-lsfusion6) 6.0-SNAPSHOT
.
Выборочная установка
Если какие-то из перечисленных в установке программ (компонент платформы) не надо устанавливать / уже установлены на вашем компьютере:
- Windows
- Linux
Эти программы можно исключить в процессе установки при помощи соответствующего графического интерфейса.
Ниже приведены скрипты для установки отдельных компонент платформы:
Сервер БД - PostgreSQL 16:
ОС | Команда / Скрипт |
---|---|
Ubuntu 18+ / Debian 9+ | source <(curl -s https://download.lsfusion.org/apt/install-lsfusion6-db) |
Сервер приложений - lsFusion 6 Server (+ OpenJDK 11):
ОС | Команда / Скрипт |
---|---|
Ubuntu 18+ / Debian 9+ | source <(curl -s https://download.lsfusion.org/apt/install-lsfusion6-server) |
Веб-сервер - lsFusion 6 Client (+ Tomcat 9.0.89):
ОС | Команда / Скрипт |
---|---|
Ubuntu 18+ / Debian 9+ | source <(curl -s https://download.lsfusion.org/apt/install-lsfusion6-client) |
При установке компонент платформы на разные компьютеры необходимо дополнительно донастроить параметры их подключения друг к другу:
Компоненты на разных компьютерах | Параметры подключения | Настраиваемый файл |
---|---|---|
Сервер БД и сервер приложений (Server) | Сервера приложений к серверу БД | Файл lsFusion параметров запуска сервера приложений |
Сервер приложений (Server) и веб-сервер (Client) | Веб-сервера к серверу приложений | Файл lsFusion параметров запуска веб-сервера |
При установке под Windows вышеописанные параметры запрашиваются в процессе установки и файлы параметров настраиваются автоматически.
Ручная донастройка (пути к файлам, имена служб)
Параметры запуска
- Windows
- Linux
Компонент | java | lsfusion |
---|---|---|
Сервер приложений (Server) | вкладка Java в графическом интерфейсе $INSTALL_DIR/Server/bin/lsfusion6_serverw.exe classpath - параметр Classpath в той же вкладке | файл $INSTALL_DIR/Server/conf/settings.properties |
Веб-сервер (Client) | вкладка Java в графическом интерфейсе $INSTALL_DIR/Client/bin/lsfusion6_serverw.exe | файл $INSTALL_DIR/Client/conf/catalina/localhost/ROOT.xml |
Десктоп-клиент | Java параметры задаются внутри тега j2se в jnlp файле. |
Component | java | lsfusion |
---|---|---|
Сервер приложений (Server) | параметр FUSION_OPTS в файле /etc/lsfusion6-server/lsfusion.conf classpath - параметр CLASSPATH в том же файле | файл /etc/lsfusion6-server/settings.properties |
Веб-сервер (Client) | параметр CATALINA_OPTS в файле /etc/lsfusion6-client/lsfusion.conf | файл /etc/lsfusion6-client/catalina/localhost/ROOT.xml |
Десктоп-клиент | Java параметры задаются внутри тега j2se в jnlp файле. |
Перезапуск
Любые изменения, сделанные в параметрах запуска, а также изменение модулей lsFusion требуют перезапуска сервера (при изменении модулей lsFusion только сервера приложений (Server)). Это можно сделать при помощи:
- Windows
- Linux
Сервер приложений (Server)
Панель управления > Администрирование > Службы > lsFusion 6 Server
# Остановить сервер
$INSTALL_DIR/Server/bin/lsfusion6_server.exe //SS//lsfusion6_server
# Запустить сервер
$INSTALL_DIR/Server/bin/lsfusion6_server.exe //ES//lsfusion6_server
Веб-сервер (Client)
Панель управления > Администрирование > Службы > lsFusion 6 Client
# Остановить клиент
$INSTALL_DIR/Client/bin/lsfusion6_client.exe //SS//lsfusion6_client
# Запустить клиент
$INSTALL_DIR/Client/bin/lsfusion6_client.exe //ES//lsfusion6_client
Логи
Логи платформы пишутся в следующие папки:
- Windows
- Linux
Компонент | Folder |
---|---|
Сервер приложений (Server) | $INSTALL_DIR$/Server/logs |
Веб-сервер (Client) | $INSTALL_DIR$/Client/logs |
Десктоп-клиент | Users/<имя пользователя>/.fusion/logs |
Компонент | Folder |
---|---|
Сервер приложений (Server) | /var/log/lsfusion6-server |
Веб-сервер (Client) | /var/log/lsfusion6-client |
Десктоп-клиент | /home/<имя пользователя>/.fusion/logs |
Основные логи (в том числе процесс остановки и запуска сервера) находятся в:
- Сервер приложений (Server) -
stdout
- Веб-сервера (Client) -
catalina.out
(так как веб-сервер запускается на базе Tomcat).
Локаль
Локаль, используемая платформой, определяется на основе локали установленной в операционной системе. При необходимости ее можно изменить при помощи:
- Windows
- Linux
Панель управления > Язык и региональные стандарты
localectl set-locale LANG=ru_RU.utf8