Inštalácia a upgrade SmartWeb platformy

Inštalácia a upgrade SmartWeb platformy

SmartWeb je aplikácia postavená na Spring Boot 4.x a na svoj beh vyžaduje Java 21. Celé behové správanie — pripojenie na D2000, autentifikácia, sprístupnenie API (REST, CometD, gRPC, OData, OpenAPI, OAuth2), konektory aj monitoring — je riadené jediným konfiguračným súborom application.yaml.

[!NOTE] Táto kapitola popisuje aktuálny spôsob nasadenia SmartWeb platformy. Postup inštalácie pre staršie verzie D2000 — nasadenie do aplikačného servera Wildfly, prípadne staršia konfigurácia vo formáte smartweb.json — je popísaný v kapitole Inštalácia a konfigurácia pre staršie verzie D2000.

Spôsoby nasadenia

SmartWeb sa distribuuje v dvoch baleniach, ktoré obsahujú totožnú aplikáciu:

Balenie

Artefakt

Popis

Balenie

Artefakt

Popis

Samostatný JAR

smartweb.jar

Spustiteľný (fat) JAR so vstavaným Apache Tomcatom. Primárny a odporúčaný spôsob nasadenia — nevyžaduje samostatný aplikačný server.

WAR

smartweb.war

Štandardný .war archív určený na nasadenie do samostatného Apache Tomcatu (bez vstavaného Tomcatu).

Voliteľne je k dispozícii aj kontajnerový (OCI) image, ktorý zabaľuje balenie JAR.

Oba inštalačné balíky sa nachádzajú v inštalačnom adresári D2000 — D2000_EXE/web/.

Predpoklady

  • Java 21 (JRE alebo JDK) nainštalovaná na cieľovom serveri. Pre nasadenie ako samostatný JAR alebo OCI image nie je potrebný žiadny ďalší aplikačný server.

  • Pre nasadenie WAR navyše Apache Tomcat 10.x alebo novší (kompatibilný s Jakarta EE 10 / Servlet 6.0).

  • Bežiaca D2000 aplikácia (minimálne kernel) a nakonfigurovaný proces D2Connector — viď Konfigurácia procesu D2Connector pre SmartWeb.

Inštalácia ako samostatný JAR

Ide o odporúčaný spôsob nasadenia. Aplikácia sa spúšťa priamo príkazom java -jar, pričom Apache Tomcat je súčasťou JAR-u.

  1. Nakopírovať súbor D2000_EXE/web/smartweb.jar do zvoleného inštalačného adresára (napr. /opt/smartweb alebo C:\smartweb).

  2. Spustiť aplikáciu:

    java -jar smartweb.jar
  3. Pri prvom spustení si SmartWeb v podadresári config/ vedľa JAR-u automaticky vygeneruje predvolený konfiguračný súbor application.yaml. Aplikáciu zastavte (Ctrl+C).

  4. Upraviť config/application.yaml — minimálne nastaviť pripojenie na D2000 (smartweb.connections). Podrobnosti viď Konfigurácia SmartWeb aplikácie.

  5. Opäť spustiť aplikáciu príkazom java -jar smartweb.jar.

  6. Otvoriť aplikáciu v prehliadači — predvolene na adrese http://localhost:8080/, administračnú konzolu na http://localhost:8080/admin/.

Predvolene aplikácia očakáva konfiguráciu v adresári config/ vedľa JAR-u. Iné umiestnenie je možné zadať parametrom Spring Boot:

java -jar smartweb.jar --spring.config.location=file:/opt/smartweb/config/application.yaml

[!TIP] Na produkčné nasadenie je vhodné spúšťať smartweb.jar ako službu operačného systému (Windows Service alebo systemd unit), aby sa aplikácia automaticky spúšťala po štarte servera.

Inštalácia ako WAR do samostatného Tomcatu

Tento spôsob je vhodný tam, kde už existuje spravovaná inštancia Apache Tomcatu, alebo je potrebné na jednom serveri prevádzkovať viacero aplikácií.

  1. Nainštalovať Java 21 a nastaviť systémovú premennú JAVA_HOME na koreňový adresár inštalácie.

  2. Stiahnuť a nainštalovať Apache Tomcat 10.x (alebo novší) podľa štandardného postupu.

  3. Nakopírovať súbor D2000_EXE/web/smartweb.war do adresára webapps Tomcatu.

  4. Spustiť Tomcat. Pri prvom spustení SmartWeb vytvorí adresár <tomcat>/conf/applications/smartweb/ a v ňom vygeneruje predvolený application.yaml.

  5. Zastaviť Tomcat, upraviť <tomcat>/conf/applications/smartweb/application.yaml (minimálne pripojenie na D2000) a Tomcat opäť spustiť.

  6. Otvoriť aplikáciu v prehliadači — predvolene na adrese http://localhost:8080/smartweb/, administračnú konzolu na http://localhost:8080/smartweb/admin/.

[!NOTE] Pri nasadení do samostatného Tomcatu sa HTTPS konfiguruje cez element <Connector> v súbore server.xml Tomcatu, nie cez vlastnosti server.ssl.* v application.yaml (tie sa uplatňujú len pri vstavanom Tomcate v balení JAR).

Nasadenie ako kontajnerový (OCI) image

SmartWeb je k dispozícii aj ako OCI (Docker) image, ktorý obsahuje balenie JAR aj s Java 21 behovým prostredím:

docker run -p 8080:8080 ` -v /cesta/ku/config:/config ` ipesoft/d2/smartweb:<verzia>

Konfiguračný súbor application.yaml sa v kontajneri očakáva v adresári /config. Tento adresár je vhodné pripojiť ako zväzok (volume) z hostiteľského systému, aby konfigurácia prežila reštart aj výmenu kontajnera.

Zmena kontextovej cesty URL

Nasadenie ako WAR — kontextová cesta je odvodená od názvu .war súboru. Pre zmenu z http://localhost:8080/smartweb napríklad na http://localhost:8080/myApp:

  1. Zastaviť Tomcat server.

  2. Premenovať súbor webapps/smartweb.war na webapps/myApp.war.

  3. Spustiť Tomcat server.

Nasadenie ako samostatný JAR — kontextová cesta sa nastavuje v application.yaml vlastnosťou server.servlet.context-path:

server: servlet: context-path: /myApp

[!IMPORTANT] Pre správne fungovanie aplikácie je nevyhnutné názov .war súboru, resp. kontextovú cestu, voliť iba s použitím alfanumerických znakov a bez diakritiky.