One-Line Installation (Recommended)
On a server with internet access, installation starts with a single command.
curl -fsSL https://product.kopens.io/plantpulse-studio/install.sh | sudo bash
For air-gapped networks, see Air-Gapped Network Installation.
Before You Begin
| What to Check | Description |
|---|---|
| Permissions | Must run as root (sudo bash) |
| Network | HTTPS access to product.kopens.io · docker.kopens.io |
| Values to Prepare | Platform address, data storage path — see below |
What the Script Does
- Verifies running as root
- Installs
gitif not present (dnf/apt) - Attempts the bundle tarball first (no authentication required), and falls back to cloning from the repository if it fails
- Continues with the installation script
Studio uses the tarball path by default
The bundle is hosted on the CDN, so it's downloaded without repository authentication. Installation proceeds even if the corporate firewall blocks repository access.
Installing with Custom Values
Place environment variables before bash. If placed before curl, they won't carry over through the pipe.
curl -fsSL https://product.kopens.io/plantpulse-studio/install.sh \
| sudo PLATFORM_API_TARGET=https://192.168.0.41 DATA_ROOT=/data1/pp-studio bash
To be prompted for each empty value interactively, run it in interactive mode. Recommended for first-time installations.
curl -fsSL https://product.kopens.io/plantpulse-studio/install.sh | sudo INTERACTIVE=1 bash
| Environment Variable | Default | Purpose |
|---|---|---|
INTERACTIVE | 0 | If 1, prompts for empty values |
PLATFORM_API_TARGET | — | Platform API address (for real data and authentication delegation) |
DATA_ROOT | /var/lib/pp-studio | Storage location for workspace, builds, and DB data |
DEST | /opt/kopens/plantpulse-studio-docker | Installation location |
BRANCH | main | Branch to use when fetching from the repository |
GIT_USER · GIT_TOKEN | — | Authentication to use when the tarball fails and it falls back to cloning |
The full variable list is in the Environment Variable Reference.
When Installation Completes
- Change the Initial Password — change
admin/admin123!. - Getting Started — first login and screen setup.
- If serving via a domain → Domain and Reverse Proxy.
Related Documentation
- Installation — full procedure and filling in values
- Air-Gapped Network Installation — air-gapped networks
- Environment Variable Reference