Installation
Requirements
-
2 CPU cores, 1 GB of RAM
-
Linux (x86, 64-bit or ARM, 64-bit), macOS (ARM, 64-bit), Windows Server (x86, 64-bit)
-
PostgreSQL 17 (or newer) or H2 (bundled)
| We recommend to run Stretchy Orchestrator on Linux. |
At a Glance
-
Prepare the database, if necessary.
-
Chose between one of the installation methods (Archive or Container Image) and install the Orchestrator.
-
Start the Orchestrator and wait for the admin password to be printed to the log.
-
Log into the web interface at http://localhost:8080 and change the admin password by clicking on My profile.
Archive
Linux
We recommend to run Stretchy Orchestrator as a non-privileged user. For the rest of the steps, we assume that the user is named stretchy.
-
Download Stretchy Orchestrator for the architecture of your system.
-
Unpack the archive and move its contents to
/usr/local/stretchy-orchestrator. -
Adapt the configuration in
/usr/local/stretchy-orchestrator/config/application.propertiesaccording to your needs. Please see chapter Configuration for what values to fill in. -
Create a systemd service configuration in
/etc/systemd/systemwith the namestretchy-orchestrator.serviceand the contents from Example 1. -
Enable the systemd service by running
systemctl enable stretchy-orchestrator.serviceasroot. -
Start the systemd service by running
stystemctl start stretchy-orchestrator.serviceasroot.
[Unit]
Description=Stretchy Orchestrator
After=syslog.target network.target
[Service]
User=stretchy
Group=stretchy
Type=exec
ExecStart=/usr/local/stretchy-orchestrator/lib/runtime/bin/java \
--enable-preview \
-cp '/usr/local/stretchy-orchestrator/lib/app/*' \
dev.stretchy.orchestrator.StretchyOrchestrator
WorkingDirectory=/usr/local/stretchy-orchestrator
[Install]
WantedBy=multi-user.target
| This systemd service configuration is insecure. Please see the section systemd in the chapter Configuration for how to harden the systemd service. |
We recommend to instruct systemd to restart Stretchy Orchestrator automatically on failure with Restart=. Please see systemd.service(5) for further information.
|
macOS
We recommend to run Stretchy Orchestrator as a non-privileged user (called "Standard" by macOS). For the rest of the steps, we assume that the user is named stretchy.
-
Download Stretchy Orchestrator for the architecture of your system.
-
Unpack the archive and move its contents to
/usr/local/stretchy-orchestrator. -
Adapt the configuration in
/usr/local/stretchy-orchestrator/config/application.propertiesaccording to your needs. Please see chapter Configuration for what values to fill in. -
Create a job definition for launchd in
/Library/LaunchDaemonswith the namedev.stretchy.orchestrator.plistand the contents from Example 2. -
Enable the Launch Daemon by running
launchctl load /Library/LaunchDaemons/dev.stretchy.orchestrator.plistasroot.
<?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>dev.stretchy.orchestrator</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/stretchy-orchestrator/lib/runtime/bin/java</string>
<string>--enable-preview</string>
<string>-cp</string>
<string>/usr/local/stretchy-orchestrator/lib/app/*</string>
<string>dev.stretchy.orchestrator.StretchyOrchestrator</string>
</array>
<key>WorkingDirectory</key>
<string>/usr/local/stretchy-orchestrator</string>
<key>UserName</key>
<string>stretchy</string>
<key>GroupName</key>
<string>staff</string>
<key>KeepAlive</key>
<true/>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>