Deployment Options
This page provides a comprehensive overview of all available deployment methods for the Speckle server, helping you choose the right approach for your specific needs and requirements.
Overview
Speckle server can be deployed using several different methods, each suited for different use cases, team sizes, and technical requirements. The choice of deployment method depends on factors such as:
- Team size and expected user load
- Technical expertise available
- Infrastructure requirements and budget
- Scalability needs and growth plans
- Security and compliance requirements
- Maintenance preferences and resources
Deployment Methods
Need Help Choosing? If you’re unsure which deployment method is right for you, start with Docker Compose for most use cases. It provides the best balance of simplicity, functionality, and cost-effectiveness.
Docker Compose (Recommended for most users)
Best For: Small to medium teams, organizations starting with Speckle, cost-conscious deployments
Key Benefits:
- Simple Setup: Single command deployment with minimal configuration
- Cost Effective: Runs on any Linux server with Docker support
- Full Control: Complete control over infrastructure and configuration
- Easy Maintenance: Simple update and backup procedures
- Production Ready: Includes SSL, monitoring, and backup capabilities
Technical Requirements:
- Docker and Docker Compose installed
- Linux server with 4GB+ RAM and 20GB+ storage
- Domain name and SSL certificate
- Basic Linux administration knowledge
Use Cases:
- Teams of 5-50 users
- Organizations wanting full control over their data
- Cost-sensitive deployments
- Proof of concept and testing environments
- Educational institutions and research organizations
Limitations:
- Single server deployment (no built-in high availability)
- Manual scaling required
- Limited to single geographic location
- Requires manual maintenance and updates
Kubernetes (Enterprise & Production)
Best For: Large organizations, enterprise deployments, high-availability requirements
Key Benefits:
- High Availability: Multi-node deployment with automatic failover
- Auto Scaling: Automatic scaling based on load and resource usage
- Global Deployment: Multi-region and multi-cloud deployments
- Advanced Orchestration: Rolling updates, health checks, and auto-recovery
- Enterprise Features: Load balancing, ingress management, and monitoring
Technical Requirements:
- Kubernetes cluster (v1.20+) with at least 3 nodes
- kubectl and Helm package manager
- Ingress controller and storage classes
- Domain name and SSL certificates
- Kubernetes administration expertise
Use Cases:
- Enterprise organizations with 50+ users
- High-availability production environments
- Multi-region deployments
- Organizations with existing Kubernetes infrastructure
- Applications requiring advanced orchestration
Limitations:
- High complexity and learning curve
- Requires significant infrastructure resources
- Expensive for small deployments
- Requires specialized Kubernetes knowledge
Comparison Matrix
Feature | Docker Compose | Kubernetes |
---|---|---|
Setup Complexity | Low | High |
Maintenance Effort | Low | High |
Cost | $ | $$$ |
Scalability | Manual | Automatic |
High Availability | No | Yes |
Production Ready | Yes | Yes |
Customization | Medium | High |
Learning Curve | Low | High |
Infrastructure | Single Server | Cluster |
Best For Teams | 5-50 users | 50+ users |
Decision Guide
I want to get started quickly with minimal setup
Choose: Docker Compose
- Simple one-command deployment
- Minimal configuration required
- Works on any Linux server
- Includes all necessary components
I’m deploying for my organization and need reliability
Choose: Docker Compose
- Production-ready with SSL and monitoring
- Cost-effective for most organizations
- Easy to maintain and update
- Good for teams up to 50 users
I need enterprise-grade deployment with high availability
Choose: Kubernetes
- Multi-node deployment with automatic failover
- Auto-scaling capabilities
- Advanced monitoring and orchestration
- Suitable for large organizations
I need global deployment across multiple regions
Choose: Kubernetes
- Multi-region deployment capabilities
- Load balancing across geographic locations
- Advanced networking and routing
- Enterprise-grade infrastructure
Getting Help
- Community Forum: speckle.community
- GitHub Issues: speckle-server issues
- Professional Support: For Enterprise Support contracts, contact us at [email protected]