Prerequisites
Before installing the Provisioning Platform, ensure your system meets the following requirements.
Hardware Requirements
Minimum Requirements (Solo Mode)
- CPU: 2 cores
- RAM: 4GB
- Disk: 20GB available space
- Network: Internet connection for downloading dependencies
Recommended Requirements (Multi-User Mode)
- CPU: 4 cores
- RAM: 8GB
- Disk: 50GB available space
- Network: Reliable internet connection
Production Requirements (Enterprise Mode)
- CPU: 16 cores
- RAM: 32GB
- Disk: 500GB available space (SSD recommended)
- Network: High-bandwidth connection with static IP
Operating System
Supported Platforms
- macOS: 12.0 (Monterey) or later
- Linux:
- Ubuntu 22.04 LTS or later
- Fedora 38 or later
- Debian 12 (Bookworm) or later
- RHEL 9 or later
Platform-Specific Notes
macOS:
- Xcode Command Line Tools required
- Homebrew recommended for package management
Linux:
- systemd-based distribution recommended
- sudo access required for some operations
Required Software
Core Dependencies
| Software | Version | Purpose |
|---|---|---|
| Nushell | 0.107.1+ | Shell and scripting language |
| KCL | 0.11.2+ | Configuration language |
| Docker | 20.10+ | Container runtime (for platform services) |
| SOPS | 3.10.2+ | Secrets management |
| Age | 1.2.1+ | Encryption tool |
Optional Dependencies
| Software | Version | Purpose |
|---|---|---|
| Podman | 4.0+ | Alternative container runtime |
| OrbStack | Latest | macOS-optimized container runtime |
| K9s | 0.50.6+ | Kubernetes management interface |
| glow | Latest | Markdown renderer for guides |
| bat | Latest | Syntax highlighting for file viewing |
Installation Verification
Before proceeding, verify your system has the core dependencies installed:
Nushell
# Check Nushell version
nu --version
# Expected output: 0.107.1 or higher
KCL
# Check KCL version
kcl --version
# Expected output: 0.11.2 or higher
Docker
# Check Docker version
docker --version
# Check Docker is running
docker ps
# Expected: Docker version 20.10+ and connection successful
SOPS
# Check SOPS version
sops --version
# Expected output: 3.10.2 or higher
Age
# Check Age version
age --version
# Expected output: 1.2.1 or higher
Installing Missing Dependencies
macOS (using Homebrew)
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install Nushell
brew install nushell
# Install KCL
brew install kcl
# Install Docker Desktop
brew install --cask docker
# Install SOPS
brew install sops
# Install Age
brew install age
# Optional: Install extras
brew install k9s glow bat
Ubuntu/Debian
# Update package list
sudo apt update
# Install prerequisites
sudo apt install -y curl git build-essential
# Install Nushell (from GitHub releases)
curl -LO https://github.com/nushell/nushell/releases/download/0.107.1/nu-0.107.1-x86_64-linux-musl.tar.gz
tar xzf nu-0.107.1-x86_64-linux-musl.tar.gz
sudo mv nu /usr/local/bin/
# Install KCL
curl -LO https://github.com/kcl-lang/cli/releases/download/v0.11.2/kcl-v0.11.2-linux-amd64.tar.gz
tar xzf kcl-v0.11.2-linux-amd64.tar.gz
sudo mv kcl /usr/local/bin/
# Install Docker
sudo apt install -y docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
# Install SOPS
curl -LO https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.linux.amd64
chmod +x sops-v3.10.2.linux.amd64
sudo mv sops-v3.10.2.linux.amd64 /usr/local/bin/sops
# Install Age
sudo apt install -y age
Fedora/RHEL
# Install Nushell
sudo dnf install -y nushell
# Install KCL (from releases)
curl -LO https://github.com/kcl-lang/cli/releases/download/v0.11.2/kcl-v0.11.2-linux-amd64.tar.gz
tar xzf kcl-v0.11.2-linux-amd64.tar.gz
sudo mv kcl /usr/local/bin/
# Install Docker
sudo dnf install -y docker
sudo systemctl enable --now docker
sudo usermod -aG docker $USER
# Install SOPS
sudo dnf install -y sops
# Install Age
sudo dnf install -y age
Network Requirements
Firewall Ports
If running platform services, ensure these ports are available:
| Service | Port | Protocol | Purpose |
|---|---|---|---|
| Orchestrator | 8080 | HTTP | Workflow API |
| Control Center | 9090 | HTTP | Policy engine |
| KMS Service | 8082 | HTTP | Key management |
| API Server | 8083 | HTTP | REST API |
| Extension Registry | 8084 | HTTP | Extension discovery |
| OCI Registry | 5000 | HTTP | Artifact storage |
External Connectivity
The platform requires outbound internet access to:
- Download dependencies and updates
- Pull container images
- Access cloud provider APIs (AWS, UpCloud)
- Fetch extension packages
Cloud Provider Credentials (Optional)
If you plan to use cloud providers, prepare credentials:
AWS
- AWS Access Key ID
- AWS Secret Access Key
- Configured via
~/.aws/credentialsor environment variables
UpCloud
- UpCloud username
- UpCloud password
- Configured via environment variables or config files
Next Steps
Once all prerequisites are met, proceed to: → Installation