Skip to main content
Version: 0.5.5

OpenClaw on Aruba Cloud

Deploy OpenClaw — a self-hosted personal AI agent with persistent memory and 29+ messaging channel integrations — on Aruba Cloud using Terraform and cloud-init. Deployed via Docker.

Provider version: arubacloud/arubacloud ~> 0.5 | Terraform: ≥ 1.9


Introduction​

OpenClaw is a self-hosted AI agent platform that maintains persistent memory across conversations and integrates with messaging channels (Slack, Discord, Telegram, etc.). This example deploys:

  • OpenClaw via Docker with persistent data storage
  • nginx reverse proxy on port 3000
  • Configurable OpenAI and Anthropic API keys

Architecture Overview​


Infrastructure Created​

ResourceName patternDescription
arubacloud_projectoclaw-prodProject container
arubacloud_vpcoclaw-prod-vpcVirtual Private Cloud
arubacloud_subnetoclaw-prod-subnetBasic subnet
arubacloud_securitygroupoclaw-prod-vm-sgSecurity group
arubacloud_securityruleoclaw-prod-vm-sshSSH ingress
arubacloud_securityruleoclaw-prod-vm-httpOpenClaw web UI port 3000
arubacloud_elasticipoclaw-prod-vm-eipVM public IP
arubacloud_blockstorageoclaw-prod-boot20 GB boot disk (Performance)
arubacloud_keypairoclaw-prod-keypairSSH public key
arubacloud_cloudserveroclaw-prod-vmCloudServer VM

Estimated Monthly Cost​

ResourceSpecEst. cost/mo
CloudServer VMCSO2A4 — 2 vCPU / 4 GB~€20
Boot disk20 GB Performance~€3
Elastic IP—~€3
Total~€26/mo

Requirements​

  • Terraform ≥ 1.9
  • ArubaCloud Terraform Provider ~> 0.5
  • An ArubaCloud account with OAuth2 API credentials
  • An SSH key pair
  • At least one LLM API key (OpenAI or Anthropic)

Variables​

Required​

VariableDescription
arubacloud_client_idArubaCloud OAuth2 client ID
arubacloud_client_secretArubaCloud OAuth2 client secret
ssh_public_keySSH public key content

Optional​

VariableDefaultDescription
app_name"oclaw"Short name used in all resource names
environment"prod"Environment label
location"ITBG-Bergamo"ArubaCloud region
zone"ITBG-1"Availability zone
billing_period"Hour""Hour" or "Month"
vm_flavor"CSO2A4"CloudServer flavor
vm_disk_size_gb20Boot disk size in GB
ssh_cidr"0.0.0.0/0"CIDR for SSH
openai_api_key""OpenAI API key
anthropic_api_key""Anthropic API key

Outputs​

OutputDescription
openclaw_urlOpenClaw web UI URL
vm_public_ipPublic IP address of the VM
ssh_commandSSH command to connect to the VM

Deployment Instructions​

1. Clone and navigate​

git clone https://github.com/arubacloud/terraform-arubacloud-examples.git
cd terraform-arubacloud-examples/openclaw

2. Configure variables​

cp terraform.tfvars.example terraform.tfvars

Set your API keys:

openai_api_key = "sk-..."
anthropic_api_key = "sk-ant-..."

3. Deploy​

terraform init
terraform plan
terraform apply

4. Access​

Navigate to http://<IP>:3000 to access the OpenClaw web interface.


References​