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.
- Installation (
install.sh) — sets up a single gateway - Post-Installation Inspection — health checks · password change · backups
- Production Readiness Criteria — Go/No-Go before handing over to operations
If Your Situation Differs
| Situation | Where to Look |
|---|---|
| Repeated installation of 100+ units on a mass-production line | Mass Production Line (factory.sh) — IDs · credentials · labels · inventory |
| Internet blocked · USB transfer | Air-Gapped Network Installation |
| VMware · Hyper-V · KVM · cloud VM | Virtual Machine · Cloud Installation — just network and resource differences |
| PLC network / WAN network design first | Network Configuration — NIC roles · static IP · firewall |
| Need to change the password | Initial Password Change — mandatory for commissioning |
| Installation stuck | Installation Troubleshooting — by symptom |
| Need to know systemd units · mounts · OTA | Docker Installation — reference |
What Installation Does
The install.sh of One-Line Installation is idempotent and organizes the following items.
| Area | What It Handles |
|---|---|
| OS Preparation | Required packages, Docker, chrony, firewall, sysctl/limits |
| Network | Optional nmcli static IP setting, WAN/PLC NIC env override |
| Security | Per-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 |
| systemd | plantpulse-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
| Item | Criteria |
|---|---|
| OS | Linux. RHEL/Fedora/Rocky/CentOS family recommended, VM is also possible |
| Permissions | root or sudo -i |
| Network | product.kopens.io · reachable to docker.kopens.io |
| Disk | /opt/kopens 3GB+, /data1 100GB+ recommended for data |
| Memory | 8GB 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.serviceisactivecontainer_mode=trueof/api/v1/system/version/api/v1/system/healthHTTP 200, major componentsUP- 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.