Rewritten Lambda and S3 Providers
LocalStack 2.0 ships fully rewritten Lambda and S3 providers focused on AWS parity and faster execution.
- Lambda invocation time for a simple Echo function drops from 800-1000ms on the old
docker executor to around 10ms. - Functions now run in official AWS images pulled to match the production environment, instead of executing inside the LocalStack container.
- Lambda functions can be created asynchronously and have stricter input validation.
- S3 notifications are now asynchronous, with behavior closer to AWS.
Separation of Community and Pro Images
Pro and Team customers must migrate to the new localstack/localstack-pro image, while Community users stay on localstack/localstack.
- Resolves a circular dependency between the open-source version and the proprietary Pro extensions.
- Community image size drops from 775 MB to ~320 MB; Pro image drops from 750 MB to ~570 MB.
- Using an API key with the Community image to activate Pro extensions now returns an error.
New Snapshot Persistence Mechanism
Persistence now loads data on LocalStack startup rather than lazy-loading per service on first use.
- Set
SNAPSHOT_LOAD_STRATEGY to on_request or on_startup to control when snapshots load. - Set
SNAPSHOT_SAVE_STRATEGY to on_request, on_shutdown, or scheduled to control when snapshots save. - Default save strategy is scheduled: snapshots of changed services are taken every 15 seconds and on shutdown.
Cloud Pods for Community Edition
Cloud Pods are persistent state snapshots that can be restored, merged, and injected into an instance.
- Community edition can now create persistent snapshots and store them locally or in a Git repository.
- The Cloud Pods launchpad shares and injects pods from a repository or URL via a badge from
app.localstack.cloud/launchpad. - Cloud Pods created with v1.x.x may be incompatible with 2.0 due to a changed pod layout.
Mono Container for Big Data Services
Mono container mode for Glue, EMR, and Athena is now the default, replacing the separate localstack_bigdata sidecar container.
- The previous
localstack_bigdata sidecar implementation is deprecated and will be removed in a future release. - Dependencies are downloaded and installed at runtime on first load and cached in the
var_libs directory. - A
localstack/localstack-pro:2.0.0-bigdata image ships with the default dependencies pre-installed.
Simplified Host and Network Configuration
HOSTNAME_EXTERNAL and LOCALSTACK_HOSTNAME are unified into LOCALSTACK_HOST for hostnames returned by services such as OpenSearch clusters, SQS queues, and RDS databases.EDGE_BIND_HOST, EDGE_PORT, and EDGE_PORT_HTTP are unified into GATEWAY_LISTEN for the addresses and ports LocalStack listens on.- Cross-service IAM enforcement (
ENFORCE_IAM=1) now evaluates internal requests between services and resource-based permissions. - Resource Browser adds support for Glue, SES v2, RDS Clusters, and Lambda Layers, reaching 28 supported services.