Installation
Install Expanso Edge to run data pipelines on your infrastructure.
System Requirements
Expanso Edge has a minimal footprint and runs on most modern systems:
- CPU: 0.5 cores
- RAM: 64 MB
- Disk: 150 MB
These requirements may increase based on your pipeline configuration, data volume, and buffering needs.
Supported platforms:
- Linux (kernel 3.10+)
- macOS (10.15+)
- Windows (10+)
- Docker
Install Expanso Edge
- Linux / macOS
- Windows
- Docker
- Kubernetes
# Install Expanso Edge
curl -fsSL https://get.expanso.io/edge/install.sh | bash
# Verify installation
expanso-edge version
Expected output:
Expanso Edge v1.x.x
The automated PowerShell installer is not yet available. For Windows installation:
Option 1: Use Docker (Recommended)
# Pull and run Expanso Edge via Docker
docker pull ghcr.io/expanso-io/expanso-edge:nightly
docker run ghcr.io/expanso-io/expanso-edge:nightly version
Option 2: Manual Installation Contact [email protected] for Windows binary download instructions.
Option 3: WSL2 Install via Windows Subsystem for Linux (WSL2):
# Inside WSL2 Ubuntu/Debian
curl -fsSL https://get.expanso.io/edge/install.sh | bash
# Pull Expanso Edge image
docker pull ghcr.io/expanso-io/expanso-edge:nightly
# Run Expanso Edge
docker run -d \
--name expanso-edge \
--restart unless-stopped \
ghcr.io/expanso-io/expanso-edge:nightly run
Step 1: Create a Secret for the bootstrap token
# Get your bootstrap token from Expanso Cloud, then create a Secret
kubectl create secret generic expanso-bootstrap \
--from-literal=token=YOUR_BOOTSTRAP_TOKEN
Step 2: Deploy Expanso Edge as a sidecar.
In this example, we are deploying the edge node as a sidecar for nginx, but this can be replaced with your own app. Additionally, you can run Expanso Edge by itself if that suits your usecase.
cat <<'EOF' | kubectl apply -f -
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 1
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: nginx:alpine
ports:
- containerPort: 80
volumeMounts:
- name: shared-logs
mountPath: /var/log/nginx
- name: expanso-edge
image: ghcr.io/expanso-io/expanso-edge:nightly
args:
- run
- --bootstrap-token
- "$(EXPANSO_EDGE_BOOTSTRAP_TOKEN)"
env:
- name: EXPANSO_EDGE_BOOTSTRAP_TOKEN
valueFrom:
secretKeyRef:
name: expanso-bootstrap
key: token
volumeMounts:
- name: expanso-cache
mountPath: /var/lib/expanso
- name: shared-logs
mountPath: /var/log/nginx
volumes:
- name: expanso-cache
emptyDir: {}
- name: shared-logs
emptyDir: {}
EOF
- Use Secrets for tokens: Never hardcode bootstrap tokens in manifests. Use Kubernetes Secrets and reference them via
secretKeyRef. - Prefer stdout/stderr: Kubernetes captures container stdout/stderr logs by default. Emitting logs there integrates with cluster logging drivers.
- Use a shared volume for file logs: If your app writes logs to files, mount them on an
emptyDir(orhostPathfor host-level logs) and point Expanso at those paths.
Run Expanso Edge
Once installed, start the edge node. Note, this does not apply if you have installed the edge using Docker or kubernetes, since they will be already running.
expanso-edge run
Expanso Edge will prompt you for a registration token to join your network. Get this token from your network in Expanso Cloud.
Options
# Run with custom name (defaults to hostname)
expanso-edge run --name my-edge-node
# Run with config file
expanso-edge run --config /path/to/config.yaml
# Run with verbose logging
expanso-edge run --verbose
# Or set log level
expanso-edge run --log-level debug
Install expanso-cli (Optional)
expanso-cli is the command-line interface for interacting with Expanso Cloud and edge nodes via API.
When you need it:
- Local development with Local Mode
- CI/CD automation and scripting
- Programmatic job deployment
- API access without writing code
When you don't need it:
- Running pipelines with
expanso-edge run --config(standalone mode) - Using Expanso Cloud web UI only
Installation:
curl -fsSL https://get.expanso.io/cli/install.sh | sh
Verify installation (once installed):
expanso-cli version
What's Next?
- Quick Start: Build your first pipeline
- Core Concepts: Understand how Expanso works
- Components: Explore available inputs, processors, and outputs
- Local Mode: Use expanso-cli for local development