Skip to content

Latest commit

 

History

History

README.md

title Serverless Container Framework - Documentation
short_title Serverless Container Framework
description Develop and deploy containers seamlessly across AWS Lambda and AWS ECS Fargate. Develop containerized applications with hot reloading, local emulation, and automated infrastructure setup. The perfect bridge between serverless and containers.
keywords
Serverless Container Framework
AWS Fargate
AWS Lambda
AWS ECS
Container Deployment
Serverless Containers
Docker Development
Application Load Balancer
Container Orchestration
Serverless Architecture
DevOps Automation
Infrastructure as Code
Cloud Native Development
Microservices Architecture
Local Container Development
Hot Reloading

Serverless Container Framework

Serverless Container Framework

One solution to deploy serverless workloads everywhere - Serverless Container Framework (SCF) is a unified development and deployment experience for containers on serverless platforms.

The value of SCF lies in its Heroku-like experience for deploying containers on serverless platforms, without vendor lock-in. Deploy to any container-supporting serverless platform. While PaaS providers charge hefty markups based on compute usage, SCF charges only a fixed cost per each container you deploy. Even better, SCF's license is free for every developer/organization making less than $2 million in revenue per year.

In this initial release, SCF focuses on delivering an API architecture that leverages AWS Application Load Balancer for request routing, allowing developers to freely mix and transition between AWS Lambda and AWS ECS Fargate compute options, accompanied by a rich development experience.

::youtube{id="KXNYemGzda4"}

Features

Unified Container Development & Deployment

  • Deploy seamlessly to AWS Lambda and ECS Fargate via a single workflow (and more providers soon)
  • Mix Lambda and Fargate compute within a single API
  • Switch compute platforms instantly without code rewrites or downtime
  • Optimize container builds automatically for each compute service
  • Write Node.js and Python apps naturally - No Dockerfiles needed
  • Get production-ready infrastructure in seconds with automated VPC, networking & ALB setup

Rich Development Experience

  • Develop Lambda and Fargate containers rapidly with true local emulation
  • Route and simulate AWS ALB requests via localhost
  • Accelerate development with instant hot reloading
  • Inject live AWS IAM roles into your containers
  • Enjoy an elegant logging and debugging experience

Production-Ready Features

  • Smart code/config change detection for deployments
  • Supports one or multiple custom domains on the same API
  • Automatic SSL certificate management
  • Secure AWS IAM and network defaults
  • Load environment variables from .env, AWS Secrets Manager, AWS Systems Manager Parameter Store, HashiCorp Vault, HashiCorp Terraform state, and more via Serverless Framework Variables
  • Multi-cloud support coming soon

Configuration

Serverless Container Framework offers simple YAML to deliver complex architectures via a serverless.containers.yml file. Here is a simple example of a full-stack application.

name: acmeinc

deployment:
  type: [email protected]

containers:
  # Web (Frontend)
  service-web:
    src: ./web
    routing:
      domain: acmeinc.com
      pathPattern: /*
    compute:
      type: awsLambda
  # API (Backend)
  service-api:
    src: ./api
    routing:
      domain: api.acmeinc.com
      pathPattern: /api/*
      pathHealthCheck: /health
    compute:
      type: awsFargateEcs
      awsFargateEcs:
        memory: 4096
        cpu: 1024
      environment:
        HELLO: world
      awsIam:
        customPolicy:
          Version: "2012-10-17"
          Statement:
            - Effect: Allow
              Action:
                - dynamodb:GetItem
              Resource:
                - "*"