Skip to content

LocalStack image requires authentication from March 23, 2026 #387

@HarshCasper

Description

@HarshCasper

Hey folks 👋

I'm Harsh from the LocalStack team. Wanted to flag an upcoming change that will directly affect users of the LocalStack integration in lambda-tools.

What's changing: Starting March 23, 2026, localstack/localstack:latest on Docker Hub will consolidate into a single unified image that requires authentication via a LOCALSTACK_AUTH_TOKEN. The free Community image, as it exists today, will no longer be available under that tag without an auth token set.

What this means for this repo:

src/localstack.ts defines:

const LOCALSTACK_IMAGE = 'localstack/localstack';

and resolves the full image at runtime as ${LOCALSTACK_IMAGE}:${versionTag}. Any user who calls getConnection() or localStackHooks() after March 23 without a LOCALSTACK_AUTH_TOKEN set will hit an authentication error and the container will fail to start.

The places most likely to need updating:

  • src/localstack.ts — the getConnection and localStackHooks functions should forward LOCALSTACK_AUTH_TOKEN from process.env to the container's environment
  • README / docs — auth token setup should be listed as a prerequisite

What users will need to do:

  1. Sign up for a free LocalStack account at localstack.cloud
  2. Generate an auth token from the LocalStack Web App
  3. Set LOCALSTACK_AUTH_TOKEN as an environment variable when starting the container

With lambda-tools, this could be handled by updating the container creation in getConnection to pass through the token:

import { getConnection } from '@lifeomic/lambda-tools';

// Ensure LOCALSTACK_AUTH_TOKEN is set in process.env before calling this
const { clients, teardown } = await getConnection({
  services: ['s3', 'sqs'],
});

The good news: A free tier is staying. CI credits are now unlimited on all plans, including free, and open-source projects can apply for free access to paid plans.

Full details in our announcements:

Happy to help with any doc updates, review PRs, or answer questions. Let us know if there's anything we can do to make this transition easier — and thanks for maintaining lambda-tools! 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions