Prerequisites
Before you begin, ensure you have the following installed:Go 1.24+
Download and install Go from the official website
Docker
Required for PostgreSQL, RabbitMQ, and other dependencies
The development launcher automatically manages Docker containers for all required infrastructure components.
Installation
Synchronize Go workspace
The repository uses Go workspaces to manage multiple modules. Synchronize the workspace and tidy dependencies:
The
go.work file orchestrates modules located in backend/, connectors/, core/, engines/, sdk/, and shared/.Run the development server
Launch all Lamassu services with a single command:The development launcher will:
- Start Docker containers for PostgreSQL and RabbitMQ
- Initialize all backend services (CA, KMS, Device Manager, DMS Manager, VA, Alerts)
- Launch the web UI
- Configure service routing and API gateway
Access the Platform
Once started, Lamassu IoT is available at:HTTPS (Recommended)
HTTP
API Access
The REST API is available by adding/api to the URL path:
The
-k flag in curl bypasses certificate validation for the self-signed certificate.Development Configuration
The development launcher supports several command-line flags for customization:Crypto Engines
By default, the filesystem crypto engine is used. You can enable additional engines:filesystem- File-based key storage (default)vault- HashiCorp Vault integrationaws-kms- AWS Key Management Serviceaws-secrets- AWS Secrets Managerpkcs11- Hardware Security Module (HSM) support
Event Bus Options
Storage Options
Sample Data
AWS IoT Integration
Infrastructure Ports
When running in default mode, the development launcher exposes these ports:| Service | Port | Access |
|---|---|---|
| Lamassu UI | Dynamic | Proxied through gateway |
| Lamassu API | 8080, 8443 | HTTP and HTTPS |
| PostgreSQL | 5432 | Database (internal) |
| RabbitMQ Management | 15672 | Web UI |
| RabbitMQ AMQP | 5672 | Message broker |
| HashiCorp Vault | 8200 | If enabled |
Use
--standard-docker-ports=false to randomize infrastructure ports and avoid conflicts.Verify Installation
Test your installation with these commands:Cleanup
To stop all services and clean up Docker containers:- Press
Ctrl+Cin the terminal where the monolithic launcher is running - The cleanup routine automatically stops and removes all Docker containers labeled with
group=lamassuiot-monolithic
Next Steps
Architecture Overview
Learn about Lamassu’s system architecture and components
Core Concepts
Understand CAs, devices, and certificate lifecycle management
API Reference
Explore the REST API for programmatic access
Production Deployment
Deploy Lamassu to production with Kubernetes and Helm
