All projects

ZeroLaunch

Zero-click deployment and provisioning manager for containerized applications.

# Demo Django WebApp
- site_name: "app1.example.com"
  application_type: "django"
# Demo NodeJS WebApp
- site_name: "app2.example.com"
  application_type: "nodejs"
# Demo Binary WebApp
- site_name: "app3.example.com"
  application_type: "binary"

ZeroLaunch automates container deployment with zero downtime migrations, shared memory allocation, and intelligent routing. It handles everything from initial provisioning to ongoing management of containerized applications.

  • Implemented shared peak memory allocation between processes to reduce total required memory.
  • Built Nginx-based ingress proxy with intelligent traffic routing to internal Docker containers.
  • Enabled deployments from both Docker registries and Docker image tarballs.
  • Achieved zero downtime migrations of Docker containers during deployments.
  • Implemented automatic SSL certificate renewal and distribution using Let's Encrypt.

Architecture

ZeroLaunch follows a modern container orchestration architecture:

graph TD
    subgraph "External"
        Client[Client Requests]
        Registry[Docker Registry]
        CertAuthority[Let's Encrypt]
    end
    
    subgraph "ZeroLaunch"
        Proxy[Nginx Ingress Proxy]
        Manager[Deployment Manager]
        Scheduler[Container Scheduler]
    end
    
    subgraph "Application Layer"
        Container1[App Container 1]
        Container2[App Container 2]
        Database[PostgreSQL]
    end
    
    Client -->|HTTPS| Proxy
    Registry -->|Pull| Manager
    CertAuthority -->|Certificates| Proxy
    Proxy -->|Route| Container1
    Proxy -->|Route| Container2
    Manager -->|Start| Container1
    Manager -->|Start| Container2
    Container1 -->|Query| Database
    Container2 -->|Query| Database

Shared Memory Allocation

ZeroLaunch implements intelligent memory management:

  • Peak Memory Profiling: Tracks and analyzes peak memory usage patterns
  • Shared Allocation Pool: Dynamically shares memory between containers based on usage patterns
  • Memory Efficiency: Reduces total required memory by 30-50% for typical workloads

Zero Downtime Migrations

Migration strategy ensures continuous service availability:

  1. Blue/Green Deployment: Run old and new versions simultaneously
  2. Traffic Graduation: Shift traffic gradually from old to new
  3. Health Checks: Verify new instance readiness before full migration
  4. Rollback Capability: Automatic rollback on deployment failure

SSL Certificate Management

Automated certificate handling with Let's Encrypt:

  • Certificate issuance and renewal automation
  • Distribution to all ingress points
  • Automatic reload of Nginx configuration
  • Support for wildcard certificates

Deployment Sources

Supports multiple deployment sources:

  • Docker Registries: Pull from Docker Hub, ECR, GCR, etc.
  • Tarball Directories: Deploy from local image archives
  • Hybrid Strategy: Mix of registry and tarball deployments

Integration with CI/CD

Designed to work seamlessly with existing pipelines:

  • Docker Compose: Native support for compose files
  • GitHub Actions: Pre-built actions for ZeroLaunch
  • Gitlab CI: Integration with Gitlab CI/CD workflows

Supported Technologies

  • Docker Compose: Container definition and orchestration
  • GitHub Actions: CI/CD integration
  • Gitlab CI: Alternative CI/CD support
  • Podman: Drop-in container runtime replacement
  • PostgreSQL: Database backend
  • PGBouncer: Connection pooling