Skip to content

Latest commit

 

History

History
341 lines (290 loc) · 10.8 KB

File metadata and controls

341 lines (290 loc) · 10.8 KB

System Requirement      ≡ Table of Contents      Configuration


Installation

Content

Java Binary

Seanox Devwex is delivered as a ZIP archive that is unpacked at any location in the file system.

Overview of directory structure

+ devwex                                Home directory of Seanox Devwex
  + documents                           Document root for web content
    - index.html
  + manuals                             Directory for manuals, modularly organized in subdirectories
    + seanox-devwex                     Manual for Seanox Devwex  
      - configuration.md
      - control-and-monitoring.md
      - description.md
      - development.md
      - features.md
      - installation.md
      - license-terms.md
      - README.md                       Main page with table of contents
      - starting-and-stopping.md        
      - system-requirement.md
  + program                             Program and working directory of Seanox Devwex
    - devwex.cmd                        Batch script for Windows
    - devwex.sh                         Shell script for Unix/Linux
    - devwex.ini                        Seanox Devwex configuration   
    - devwex.jar                        Seanox Devwex binary
    - keystore                          Key and truststore
    - service.cmd                       Service batch script for Windows
    - service.exe                       Service runner for Windows 64 Bit
    - service.license
  + runtime                             Directory for runtime environments and extensions
  + storage                             Directory for data storage incl. log files
  + system                              Directory for system files incl. templates
    - index.html                        Template for the directory listing
    - status-2xx.html                   Template for error pages of HTTP status class 2xx
    - status-3xx.html                   Template for error pages of HTTP status class 3xx
    - status-4xx.html                   Template for error pages of HTTP status class 4xx
    - status-5xx.html                   Template for error pages of HTTP status class 5xx
  - CHNAGES                             Change log
  - LICENSE                             License      

Note

The package does not contain a JRE. If one is already installed. This must be found via the environment variables PATH and/or JAVA_HOME. Alternatively, the JRE can also be placed in ./runtime/java so that the batch script finds the JRE automatically.

Java Runtime Environment

The Java runtime environment can be downloaded here:

After downloading, the JRE can be installed or or without installation unpacked to ../runtime/java, where it is automatically found by the start script.

Windows Service

To install as a Windows service, a package with Apache Procrun is available based on the Java binary, which also contains service runners for 32 and 64 bit, as well as the batch file service.cmd for easy use of the service.

Also the Windows package is unpacked at an arbitrary place in the file system. Because the service should run with a Windows service account and appropriate access rights, a place outside the user profiles is recommended for unpacking and installation. By default, the Windows service account NetworkService is used, which can be changed in service.cmd. The required access rights for the program directory are set automatically during installation.

The parameters for configuring the service are centralized in the batch file and easily accessible.

To install the service, the batch file service.cmdis used. To do this, open the console (shell/command prompt) as administrator and change to the program directory ./devwex/program and call the batch file with the desired function.

usage: service.cmd [command]

Overview of commands

Command Description
install Installs the service
update Removes the service and reinstalls it with updated configuration
uninstall Removes the service
start Starts the service
status Output of the status of the running service
restart Stops the service and restarts it
stop Stops the service

Linux Service

To install Seanox Devwex as a Linux service, no separate package is provided. The installation is performed based on the Java binary by creating a systemd service definition. This allows the service to be started, stopped and monitored like any other system service.

The archive file from the Seanox Devwex release can be unpacked at any suitable location in the file system. Because the service should run with a system account and appropriate access rights, a location outside user profiles is recommended for unpacking and installation. A dedicated system user can be used for operating the service. Alternatively, the existing system user www-data may be used. In both cases, the required access rights for the program director must be configured before installation.

The parameters for configuring the service are centralized in the service definition and are easily accessible.

To install the service, a systemd service file is created. For this purpose, a file named devwex.service is created in the directory /etc/systemd/system and filled with the desired configuration.

[Unit]
Description=Seanox Devwex Service
After=network.target

[Service]
Type=simple
WorkingDirectory=/opt/devwex/program
ExecStart=/opt/devwex/program/devwex.sh start
ExecStop=/opt/devwex/program/devwex.sh stop
Restart=on-failure
User=www-data
Group=www-data

KillMode=none

[Install]
WantedBy=multi-user.target

Important

Only absolute paths should be used in devwex.sh. This is necessary because services under Linux (systemd) are started without a defined working directory and without typical shell environment variables. Absolute paths ensure that Seanox Devwex can reliably access all necessary files regardless of the call context.

After creating the file, systemd must be reloaded and the service enabled:

systemctl daemon-reload
systemctl enable devwex

Overview of commands

Command Description
systemctl start devwex Starts the service
systemctl status devwex Outputs the status of the running service
systemctl restart devwex Stops the service and restarts it
systemctl stop devwex Stops the service
journalctl -u devwex -f Outputs the log of the running service

MacOS Service

To install Seanox Devwex as a service on macOS, no separate package is provided. The installation is performed using the Java binary by creating a launchd service definition. This allows the service to be started, stopped, and monitored like any other system service on macOS.

The archive file from the Seanox Devwex release can be unpacked at any suitable location in the file system. Because the service should run under a system account with appropriate access rights, a location outside user profiles is recommended for unpacking and installation. A dedicated system user may be used to run the service. Alternatively, the existing system user www-data may be used. In both cases, the required access rights for the program directory must be configured before installation.

The parameters for configuring the service are centralized in the service definition and are easily accessible.

To install the service, a launchd service definition is created. For this purpose, a file named devwex.plist is placed in the directory /Library/LaunchDaemons and filled with the desired configuration.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
  "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>devwex</string>

    <key>ProgramArguments</key>
    <array>
      <string>/opt/devwex/program/devwex.sh</string>
      <string>start</string>
    </array>

    <key>WorkingDirectory</key>
    <string>/opt/devwex/program</string>

    <key>RunAtLoad</key>
    <true/>

    <key>UserName</key>
    <string>www-data</string>

    <key>GroupName</key>
    <string>www-data</string>

    <key>StandardOutPath</key>
    <string>/opt/devwex/storage/output.log</string>

    <key>StandardErrorPath</key>
    <string>/opt/devwex/storage/error.log</string>
  </dict>
</plist>

After creating the file, the service must be loaded and enabled:

launchctl load /Library/LaunchDaemons/devwex.plist
launchctl enable system/devwex

Overview of commands

Command Description
launchctl start devwex Starts the service
launchctl print system/devwex Outputs the status of the running service
launchctl stop devwex Stops the service
log stream --predicate 'process == "devwex"' Outputs the log of the running service

Important

Only absolute paths should be used in devwex.sh. This is necessary because services under macOS (launchd) are started without a defined working directory and without typical shell environment variables. Absolute paths ensure that Seanox Devwex can reliably access all necessary files regardless of the call context.


System Requirement      ≡ Table of Contents      Configuration