Prodat Mobile Installieren » Historie » Version 29
[E] Rocco Kreutz, 28.07.2023 10:00
1 | 19 | [E] Rocco Kreutz | h1. FredaV2 Installieren (Prodat Mobile Web-Server[ProdatMobileServiceModule]) |
---|---|---|---|
2 | 1 | [E] Rocco Kreutz | |
3 | 2 | [E] Rocco Kreutz | Momentan wird FredaV2 als ZIP und nicht als Setup ausgerollt. |
4 | 1 | [E] Rocco Kreutz | |
5 | 2 | [E] Rocco Kreutz | * FredaV2 ist ein Windows Service, ein Web-Server |
6 | * Er muss daher auf einem Rechner installiert werden, welcher von allen Geräten erreicht werden kann, welche den Dienst benutzen wollen (Browser) |
||
7 | * Vorzugsweise, sollte dies mittels Domain im Intranet möglich sein |
||
8 | 24 | [E] Rocco Kreutz | * _Y:\ProdatSQL\FredaV2Install_ |
9 | 2 | [E] Rocco Kreutz | |
10 | h3. Beispiel |
||
11 | |||
12 | 20 | [E] Rocco Kreutz | * !clipboard-202307271516-psygs.png! |
13 | 27 | [E] Rocco Kreutz | |
14 | 29 | [E] Rocco Kreutz | * Windows-Account _ProdatMobileService_ hinzufpügen, Der Service sollte unter diesem Account laufen ("keine Rechte", keine Gruppenmitgliedschaften) |
15 | 24 | [E] Rocco Kreutz | * Im Beispiel wird FredaV2 auf Laufwerk _D:_ installiert (Konform zu Prodat InstallationsStruktur) unter _D:\ProdatERP\Mobile\ProdatMobile-TESTEST_ |
16 | ** Sencha/ExtJS Komponente unter _D:\ProdatERP\Mobile\ext-7.5.1_ |
||
17 | ** UniGUI Komponente unter _D:\ProdatERP\Mobile\uni-1.90.0.1563_ , _D:\ProdatERP\Mobile\unim-1.90.0.1563_ , _D:\ProdatERP\Mobile\unipackages-7.5.1_ |
||
18 | 27 | [E] Rocco Kreutz | |
19 | 21 | [E] Rocco Kreutz | * Die aktuellsten ZIP's entpacken: |
20 | 24 | [E] Rocco Kreutz | ** *FredaV2Installation-COMPONENTS_2023-03-07_12-00-00.zip* -> _D:\ProdatERP\Mobile_ |
21 | ** *FredaV2Installation-SVC_2023-07-27_11-58-00.zip* -> _D:\ProdatERP\Mobile\ProdatMobile-TESTEST_ |
||
22 | ** *FredaV2Installation-SVC-DelphiBPL_2023-03-07_12-00-00.zip* -> _D:\ProdatERP\Mobile\ProdatMobile-TESTEST_ |
||
23 | 27 | [E] Rocco Kreutz | |
24 | 4 | [E] Rocco Kreutz | * Unter files/dms/ werden die aus dem DMS geholten Dokumente gesichert, damit nicht jedesmal beim DMS angefragt werden muss |
25 | 29 | [E] Rocco Kreutz | |
26 | * Rechte setzen auf den Installations-Ordner (später mittels Setup automatisch) |
||
27 | ** _D:\ProdatERP\Mobile\_ |
||
28 | *** Alle ACL's entfernen |
||
29 | *** _Adminstratoren_ ACL hinzufügen mit Vollzugriff |
||
30 | *** _ProdatMobileService_ ACL hinzufügen mit Lesezugriff |
||
31 | *** Dannach alle Kind-Objekt ACL's mit vererbten ersetzen |
||
32 | |||
33 | 27 | [E] Rocco Kreutz | |
34 | 4 | [E] Rocco Kreutz | * Alle anderen (originären) Ordner sind Bibliotheken |
35 | 5 | [E] Rocco Kreutz | ** Auch wenn es möglich ist die Dateien unter ext-7.5.1, uni-1.90.0.1563, unipackages-7.5.1, unim-1.90.0.1563 selber zu bearbeiten, um eigene Anpassungen am Layout zu erzielen, ist davon STRIKT abzuraten |
36 | ** Dasselbe gilt für alle mitgelieferten CSS/JS Dateien im Ordner files |
||
37 | ** In der Config ist es möglich eigene CSS/JS Dateien einzubinden |
||
38 | *** Diese müssen im Ordner files liegen oder in einem darunter liegenden Ordner |
||
39 | 27 | [E] Rocco Kreutz | |
40 | 1 | [E] Rocco Kreutz | * Konfigurieren: |
41 | 5 | [E] Rocco Kreutz | ** Die rot umrandeten Einträge müssen auf die eigenen Werte konfiguriert werden |
42 | ** Die blauen sind wahrscheinlich OK, könnten aber ebenfalls nötig sein |
||
43 | 9 | [E] Rocco Kreutz | *** Falls der Server mehr als 1 NIC besitzt und der Freda-Service nur auf einer bestimmten NIC/IP laufen soll |
44 | 5 | [E] Rocco Kreutz | ** {{collapse(manifest.json) |
45 | 17 | [E] Rocco Kreutz | !clipboard-202303071047-gl92i.png! |
46 | 1 | [E] Rocco Kreutz | }} |
47 | 22 | [E] Rocco Kreutz | ** {{collapse(server.config.json) |
48 | 18 | [E] Rocco Kreutz | !clipboard-202307271649-gboua.png! |
49 | 22 | [E] Rocco Kreutz | }} |
50 | 5 | [E] Rocco Kreutz | *** Die mitgelieferten cert.key, cert.pem, chain.cer Dateien sind reine Dummy-Dateien (zur Veranschaulichung) |
51 | *** Siehe dazu "Zertifikate für das eigene Intranet":https://redmine.prodat-sql.de/projects/prodat-v12-public/wiki/Zertifikate_f%C3%BCr_das_eigene_Intranet |
||
52 | 14 | [E] Rocco Kreutz | *** DefaultLoginConnection liefert die Werte die im LoginForm (nicht BDE) voreingetragen werden |
53 | 1 | [E] Rocco Kreutz | **** Die Werte müssen konfiguriert sein, können aber auf leere Strings gesetzt werden |
54 | 27 | [E] Rocco Kreutz | |
55 | 5 | [E] Rocco Kreutz | * Wenn alles konfiguriert wurde und die Zertifikats-Dateien vorhanden sind, kann der Dienst installiert werden |
56 | ** cmd öffnen |
||
57 | 25 | [E] Rocco Kreutz | ** Nach _D:\ProdatERP\Mobile\ProdatMobile-TESTEST_ wechseln |
58 | 5 | [E] Rocco Kreutz | ** FredaService.exe /INSTALL {{collapse(ausführen) |
59 | !clipboard-202303071116-ukau5.png! |
||
60 | }} |
||
61 | 6 | [E] Rocco Kreutz | ** Für Silent Installationen (Batch/CMD): FredaService.exe /INSTALL /SILENT |
62 | ** Service deinstallieren: FredaService.exe /UNINSTALL |
||
63 | 8 | [E] Rocco Kreutz | ** Im Service Manager unter Windows erscheint der Service dann folgendermassen (jedoch NOCH NICHT gestartet !) |
64 | 25 | [E] Rocco Kreutz | ** Im Bild wurde der Service nicht unter _D:\ProdatERP\Mobile\ProdatMobile-TESTEST_ installiert ! {{collapse(Aufklappen) |
65 | 7 | [E] Rocco Kreutz | !clipboard-202303071121-evhjr.png! |
66 | 1 | [E] Rocco Kreutz | }} |
67 | 26 | [E] Rocco Kreutz | *** Diese 'Default' Installation benutzt server.config.json als Konfigurations-Datei und benutzt 'Default' DisplayName |
68 | *** Wenn mehrere Varianten installiert werden sollen, welche eigene DisplayName's im Service-Manager anzeigen sollen und eigene Konfigurations-Dateien benutzen sollen: |
||
69 | **** FredaService.exe /install /instance mobiledev /instancedisplayname [DEV]prodat-dev-23-mobile |
||
70 | 1 | [E] Rocco Kreutz | **** {{collapse(Aufklappen) |
71 | !clipboard-202307271713-axijq.png! |
||
72 | 26 | [E] Rocco Kreutz | }} |
73 | 27 | [E] Rocco Kreutz | **** Dieses 'Instanziieren' funktioniert auch innerhalb eines Verzeichnisses |
74 | 28 | [E] Rocco Kreutz | **** Im Falle von 'LIVE', 'TESTTEST' und 'TESTLIVE' wird jedoch in jeweils eigene Ordner installiert |
75 | ***** Hier wird die Instanziierung einzig dazu benutzt, im Service-Manager die unterschiedlichen Installationen des Services für den Benutzer unterscheidbar zu machen |
||
76 | **** Instanzen @/instance <name>@ müssen Unique auf dem Rechner sein !!! |
||
77 | ***** Es ist nicht möglich FredaService.exe mehrfach mit demselben /instance Parameter zu installieren auf ein und demselben Rechner |
||
78 | 26 | [E] Rocco Kreutz | |
79 | 8 | [E] Rocco Kreutz | * Die mitgelieferte Freda.Exe ist eine normale Anwendung, kein Service |
80 | ** Damit lässt sich schnell die Konfiguration testen, ohne dass man jedesmal erst den Service stoppen und wieder starten muss |
||
81 | ** Dazu einfach die Exe ausführen |
||
82 | ** Logs/Brwoser checken |
||
83 | ** Rechts unten in der Taskleiste (evtl. im Versteckten Bereich) auf das schwarze Prodat-Logo rechtsklicken und Shutdown wählen |
||
84 | ** Damit ist der WebServer wieder beendet |
||
85 | 10 | [E] Rocco Kreutz | ** Wenn alles passt, den Service wieder starten (über die Windows-Service Verwaltung) |
86 | 11 | [E] Rocco Kreutz | |
87 | 13 | [E] Rocco Kreutz | h4. Info |
88 | 1 | [E] Rocco Kreutz | |
89 | 13 | [E] Rocco Kreutz | * Um neue Zertifikats-Dateien zu laden, muss der Service neu gestartet werden |
90 | ** Ein austauschen der Zertifakts-Dateien während das Betriebes ist möglich, wird aber vom laufenden Service ignoriert |
||
91 | * Das automatische aufräumen von bestimmten Verzeichnissen wird nur beim neustarten des internen WebServerModuls des Service ausgelöst |
||
92 | * In naher Zukunft wird es eine zusätzliche Konfigurations-Option geben, mit welcher man das interne Neustarten des WebServerModuls automatisieren kann |
||
93 | ** Damit wären dann auch ständig wechselnde (LetsEncrypt) Zertifikate einfacher zu benutzen |
||
94 | |||
95 | |||
96 | h4. Der Service legt verschiedene Ordner während der Laufzeit an: |
||
97 | |||
98 | 11 | [E] Rocco Kreutz | * {{collapse(Aufklappen) |
99 | !clipboard-202303071133-ryao7.png! |
||
100 | }} |
||
101 | * /files |
||
102 | ** Config: Paths/FilesFolder |
||
103 | * /files/dms/<dms-dokument-id>/ |
||
104 | ** Liegt IMMER unter <Config: Paths/FilesFolder>/dms |
||
105 | ** DMS-Dokumente |
||
106 | ** Dieser Ordner wird speziell behandelt, Zugriff für die Clients (Browser) ist nur innerhalb einer gültigen Session und gültigem Login möglich |
||
107 | ** Alle Dateien in diesem Ordner werden als DMS-Dokumente behandelt und unterliegen damit der Prodat-Rechte Überprüfung |
||
108 | ** Daher mqacht es keinen Sinn hier eigene Bilder abzulegen, welche evtl. über eigene CSS/JS Dateien aufgerufen werden |
||
109 | * /Administration |
||
110 | ** FredaV2 benutzt intern denselben Code (Daten-Klassen, Backend) wie Prodat, daher wird dieser Ordner angelegt aber nicht benutzt |
||
111 | * /cache/* |
||
112 | ** Config: Paths/CacheFolder |
||
113 | ** Hier legt der Service verschiedene (per Sesssion) Dateien ab, welche innerhalb einer Session oder global zwischen Sessions gemeinsam genutzt werden |
||
114 | ** Beim normalen beenden wird der komplette Ordner sofort aufgeräumt |
||
115 | * /log |
||
116 | ** Log des Services/Anwendung (Freda.exe) |
||
117 | ** Im Moment wird da noch zuviel reingeschrieben, das wird in Zukunft weit weniger |
||
118 | ** Wird nicht automatisch aufgeräumt |
||
119 | * /temp |
||
120 | ** Config: ProdatPaths/* wird derzeit noch nicht berücksichtigt |
||
121 | ** Hier wird für jede Session ein Verzeichniss angelegt, welches dem @<DESKTOP-Prodat-Installationsverzeichniss>\Temp@m entspricht {{collapse(Aufklappen) |
||
122 | !clipboard-202303071159-rczbu.png! |
||
123 | }} |
||
124 | 12 | [E] Rocco Kreutz | ** Das Verzeichniss wird automatisch aufgeräumt, bei jedem Start des internen WebServerModules des Service oder der Anwendung (Freda.exe) |
125 | 1 | [E] Rocco Kreutz | ** Alle Eintrage (Sessions, mit allen Unterordnern und Dateien) älter als 1 Monat werden automatisch gelöscht |
126 | 21 | [E] Rocco Kreutz | |
127 | |||
128 | |||
129 | h5. Sicherstellen das Berechtigungen stimmen (ACL) |
||
130 | |||
131 | * https://blog.netwrix.de/2020/05/22/die-fuenf-besten-kostenlosen-berichts-tools-fuer-ntfs-berechtigungen/ |