Skip to main content

Installation Overview

Edge is deployed as a single Docker container, and install.sh handles everything from OS preparation to systemd registration in one go. This section covers that process and its surrounding context.

If You're Reading in Order​

Most field sites only need these three.

  1. Installation (install.sh) — sets up a single gateway
  2. Post-Installation Inspection — health checks · password change · backups
  3. Production Readiness Criteria — Go/No-Go before handing over to operations

If Your Situation Differs​

SituationWhere to Look
Repeated installation of 100+ units on a mass-production lineMass Production Line (factory.sh) — IDs · credentials · labels · inventory
Internet blocked · USB transferAir-Gapped Network Installation
VMware · Hyper-V · KVM · cloud VMVirtual Machine · Cloud Installation — just network and resource differences
PLC network / WAN network design firstNetwork Configuration — NIC roles · static IP · firewall
Need to change the passwordInitial Password Change — mandatory for commissioning
Installation stuckInstallation Troubleshooting — by symptom
Need to know systemd units · mounts · OTADocker Installation — reference

What Installation Does​

The install.sh of One-Line Installation is idempotent and organizes the following items.

AreaWhat It Handles
OS PreparationRequired packages, Docker, chrony, firewall, sysctl/limits
NetworkOptional nmcli static IP setting, WAN/PLC NIC env override
SecurityPer-box random admin/MQTT/OPC-UA/API keys, CERT_PASS-based TLS material
Runtime/etc/kopens/app.properties, /data1/pp-data, container image pull/load
systemdplantpulse-edge.service, OTA path/service, host action path/service
Verification/api/v1/system/version, /api/v1/system/health, tool-based status check

After installation, initial credentials are saved once in /etc/kopens/credentials.txt. Store this file as root-only and deliver it securely during shipment/acceptance.


Pre-Installation Checks​

ItemCriteria
OSLinux. RHEL/Fedora/Rocky/CentOS family recommended, VM is also possible
Permissionsroot or sudo -i
Networkproduct.kopens.io · reachable to docker.kopens.io
Disk/opt/kopens 3GB+, /data1 100GB+ recommended for data
Memory8GB minimum, 16GB or more recommended

If it's an air-gapped network, prepare the bundle and image tar.zst from Air-Gapped Network Installation instead of checking the internet.


Criteria for Installation Completion​

# 한 줄 상태 점검
sudo bash /opt/kopens/install/bin/status.sh

# 버전 / 컨테이너 모드 확인
curl -ks https://127.0.0.1/api/v1/system/version | python3 -m json.tool

# 전체 컴포넌트 health
curl -ks https://127.0.0.1/api/v1/system/health | python3 -m json.tool

Normal criteria:

  • plantpulse-edge.service is active
  • container_mode=true of /api/v1/system/version
  • /api/v1/system/health HTTP 200, major components UP
  • Pass the Go/No-Go items in Production Readiness Criteria
  • Web UI: https://<gateway-ip>/ui/main
  • Node-RED: https://<gateway-ip>/ui/flow/

If there are issues, check Installation Troubleshooting or Container Mode Operations first.


Once installation is complete, proceed to Post-Installation Inspection — initial password change is included there.