Skip to main content

System Requirements

Hardware Requirements​

Minimum Specifications​

ItemSpecification
CPU8 cores or more
RAM32GB or more
StorageSSD 500GB or more
GPUNVIDIA GPU (CUDA support)
Network1Gbps or more
ItemSpecification
CPU16 cores or more
RAM64GB or more
StorageNVMe SSD 1TB or more
GPUNVIDIA DGX Spark or equivalent
Network10Gbps
info

PlantPulse AI is optimized to run even on lower-spec GPU environments such as the NVIDIA DGX Spark.


Software Requirements​

ItemDescription
OSUbuntu 22.04 · RHEL / Rocky / Alma 8·9 · Amazon Linux 2
ContainerDocker CE + compose v2 plugin — the installer sets this up. If already present, it is used as-is
GPU driverNVIDIA driver + container toolkit — the installer sets this up (skipped via SKIP_GPU=1). Installing a new driver may require a reboot
No need to install Java · Python on the host

All services run as containers. The host only needs the three items above.

Hosts without a GPU

If no NVIDIA device is present, the installer skips the driver step and warns that services using runtime: nvidia (vLLM generation · embedding · reranking) will not come up.

GPU Memory Shares​

The vLLM set, transcription vLLM, and time series inference server share the same GPU. If the sum of each share (LLM_GPU_UTIL · EMB_GPU_UTIL · RERANK_GPU_UTIL · TS_GPU_UTIL · ASR_GPU_UTIL) exceeds the limit PP_GPU_BUDGET_CEILING, startup is blocked. Shares and limits live not in the host env but in the hardware profile (compose/profiles/<모양>.env), and PP_HW_PROFILE in the host env selects it. Transcription (ASR_GPU_UTIL) is off by default, but it is included in the sum in advance so it does not exceed the limit on the day it's enabled — even enabling video · audio (PI_MEDIA_ENABLED=true) does not require recalculating GPU shares. When enabled, the transcription model Aura-ASR-Turbo uses about 1.6 GB more disk → Video · Audio Collection

HardwareTemplate · PP_HW_PROFILESum of shares (LLM + EMB + RERANK + TS + ASR)Limit
GB10 series (arm64, unified memory)env.gb10.example · gb100.4 + 0.10 + 0.08 + 0.13 + 0.03 = 0.740.75
AWS g7e (amd64, dedicated VRAM)env.g7e.example · g7e0.53 + 0.13 + 0.10 + 0.15 + 0.04 = 0.950.95

On GB10, GPU memory is the same pool as system RAM, so if the models take it all, nothing is left for the OS and other services. For details, see Environment Variable Configuration.


Network Requirements​

PlantPulse AI uses the following ports. Your firewall policy must allow these ports.

Ports Requiring External Access​

PortServiceDescription
80 / 443AI Chat WebWeb chat interface (the only one exposed externally)

Ports Also Opened on the Host​

These are opened directly to the LAN without going through a proxy. Use a firewall to block access from outside the internal network.

PortService
4000LiteLLM — model gateway (changed via PI_LITELLM_PORT)
7115RAG gateway
8970Time series insights
5959Admin console HTTP (changed via PI_ADMIN_WEB_PORT)
5960Admin console HTTPS — via proxy (changed via PI_ADMIN_WEB_TLS_PORT)
7474 / 7687Neo4j browser · Bolt

When opening firewall ports, the installer reads the ports actually published by compose, so whatever value you change via the variables above is what gets opened.

The admin console is not on 9080 (2026.10)

9080 as of 2026.09 and earlier has been closed. Move your bookmarks and firewall rules to 5959 (HTTP) · 5960 (HTTPS).

7114 does not exist

🔴 Previously LightRAG was exposed directly via 7114, but now rag-api (7115) is the sole gateway and LightRAG itself lives only inside the container. There is no need to open 7114 on the firewall.

What is «not» opened

Document understanding (7120) · vision (7130) · vLLM (8000) · embedding (8003) · reranker (8004) · transcription (installs with video · audio enabled) · docling (5001) · Qdrant (6333) · time series inference (8980) · admin-api (9081) · digital thread (7140) and its dedicated Neo4j do not publish host ports (2026-08-21). Phoenix (6006) also stopped publishing as of 2026.09 — because it is a trace UI without authentication. These are called only between containers, so they are not firewall targets.

PostgreSQL (5432) · Aster TSDB (9042) · Redis (6379) · RustFS (9000/9001) borrow the platform's instances — these must be open on the platform server, not the AI server.

Connections going out to the platform — obtaining credentials (2026.10)

On startup, the AI container obtains an account · password from the platform data lake management API (https://<플랫폼 호스트>:4950). The AI host must be able to reach that port outbound, and the AI host's IP must be on the platform's allowlist → Installation Overview

The full port map and verification commands are in Service Port Map.

info

MCP · ontology tools are provided by the PlantPulse platform's server-web integrated MCP (/api/v5/mcp) (the former standalone MCP Server 50000 · Ontology 8888 services have been archived).


PlantPulse IIoT Server Integration​

PlantPulse AI accesses real-time data from the PlantPulse IIoT platform. The following connections are required:

ItemDescription
PlantPulse serverIIoT platform API server (HTTPS)
Aster TSDB clusterTime series data store
PostgreSQLPlantPulse metadata DB
warning

The integrated MCP performs read-only access to the PlantPulse IIoT server. Write operations are not supported.