Installation
Local development
Section titled “Local development”There are two CLI options for running LocalStack on your laptop. Start with lstk if you want the fastest path to a running instance, or use the LocalStack CLI if you need full feature support.
lstk is a lightweight, Go-based CLI that handles the full startup sequence in one command: browser-based login, image pull, and container launch.
It’s the fastest way to get LocalStack running locally.
Install lstk:
brew install localstack/tap/lstknpm install -g @localstack/lstkDownload a pre-built binary for your platform from GitHub Releases and add it to your PATH.
Start LocalStack:
lstk startOn first run, lstk opens a browser login flow.
After authenticating, it pulls the LocalStack image and starts the container.
Subsequent starts use the stored credential from your system keyring — no manual token management needed.
LocalStack CLI
Section titled “LocalStack CLI”The full-featured LocalStack CLI gives you access to all LocalStack capabilities. Please make sure that you have a working Docker installation on your machine before moving on.
Installing LocalStack CLI
Section titled “Installing LocalStack CLI”The CLI starts and manages the LocalStack Docker container. For alternative methods of managing the LocalStack container, see our alternative installation instructions.
You can download the pre-built binary for your architecture using the link below:
x86-64 ARM64or use the curl commands below:
For x86-64:
curl --output localstack-cli-4.14.0-linux-amd64-onefile.tar.gz \ --location https://github.com/localstack/localstack-cli/releases/download/v4.14.0/localstack-cli-4.14.0-linux-amd64-onefile.tar.gzFor ARM64:
curl --output localstack-cli-4.14.0-linux-arm64-onefile.tar.gz \ --location https://github.com/localstack/localstack-cli/releases/download/v4.14.0/localstack-cli-4.14.0-linux-arm64-onefile.tar.gzThen extract the LocalStack CLI from the terminal:
sudo tar xvzf localstack-cli-4.14.0-linux-*-onefile.tar.gz -C /usr/local/binAlternative: Homebrew on Linux
If you are using Homebrew for Linux, you can install the LocalStack CLI directly from our official LocalStack tap:
brew install localstack/tap/localstack-cliYou can install the LocalStack CLI using Brew directly from our official LocalStack tap:
brew install localstack/tap/localstack-cliAlternative: Binary Download
You may download the binary for your architecture using the link below:
Intel (AMD64)or use the following curl command:
curl --output 4.14.0-darwin-amd64-onefile.tar.gz --location https://github.com/localstack/localstack-cli/releases/download/4.14.0/localstack-cli-4.14.0-darwin-amd64-onefile.tar.gzThen extract the LocalStack CLI from the terminal:
sudo tar xvzf localstack-cli-4.14.0-darwin-*-onefile.tar.gz -C /usr/local/binYou can download the pre-built binary for your architecture using the link below:
Intel (AMD64)Then extract the archive and execute the binary in Powershell.
Starting LocalStack
Section titled “Starting LocalStack”To verify that the LocalStack CLI was installed correctly, you can check the version in your terminal:
localstack --version4.14.0You are all set!
Once you’ve set up your auth token, you can start LocalStack with the following command:
localstack start # start localstack in background with -d flag __ _______ __ __ / / ____ _________ _/ / ___// /_____ ______/ /__ / / / __ \/ ___/ __ `/ /\__ \/ __/ __ `/ ___/ //_/ / /___/ /_/ / /__/ /_/ / /___/ / /_/ /_/ / /__/ ,< /_____/\____/\___/\__,_/_//____/\__/\__,_/\___/_/|_|
💻 LocalStack CLI ${LOCALSTACK_VERSION} 👤 Profile: default
[12:47:13] starting LocalStack in Docker mode 🐳 localstack.py:494 preparing environment bootstrap.py:1240 configuring container bootstrap.py:1248 starting container bootstrap.py:1258[12:47:15] detaching bootstrap.py:1262Updating LocalStack CLI
Section titled “Updating LocalStack CLI”The LocalStack CLI allows you to easily update the different components of LocalStack. To check the various options available for updating, run:
localstack update --helpUsage: localstack update [OPTIONS] COMMAND [ARGS]...
Update different LocalStack components.
Options: -h, --help Show this message and exit.
Commands: all Update all LocalStack components docker-images Update docker images LocalStack depends on localstack-cli Update LocalStack CLICI and server environments
Section titled “CI and server environments”For CI pipelines and server deployments, you’ll manage the LocalStack container directly rather than using a local CLI. See the CI/CD Setup guide for a complete walkthrough including GitHub Actions examples.
The options below cover the main container management approaches:
- Docker Compose — recommended for CI and team environments
- Docker — direct container control for scripted setups
- Helm — deploy LocalStack in a Kubernetes cluster
The LocalStack emulator is available on Docker Hub as localstack/localstack-pro.
For a comprehensive overview of LocalStack images, see the Docker images documentation.
GUI tools
Section titled “GUI tools”- LocalStack Desktop — desktop UI for managing your local instance
- LocalStack Docker Extension — manage LocalStack from Docker Desktop
LocalStack Desktop
Section titled “LocalStack Desktop”Learn more about our desktop client at LocalStack Desktop and download it here.
LocalStack Docker Extension
Section titled “LocalStack Docker Extension”Install our official Docker Desktop extension to manage LocalStack. See LocalStack Docker Extension for more information.
Docker-Compose
Section titled “Docker-Compose”To use LocalStack without the LocalStack CLI, you have the option of running the LocalStack Docker container by yourself. If you want to manually manage your Docker container, it’s usually a good idea to use Docker Compose in order to simplify your container configuration.
Prerequisites
Section titled “Prerequisites”- Docker
- Docker Compose (version 1.9.0+)
Starting LocalStack with Docker-Compose
Section titled “Starting LocalStack with Docker-Compose”You can start LocalStack with Docker Compose by configuring a docker-compose.yml file.
Docker Compose v1.9.0 and above is supported.
services: localstack: container_name: "${LOCALSTACK_DOCKER_NAME:-localstack-main}" image: localstack/localstack-pro # required for Pro ports: - "127.0.0.1:4566:4566" # LocalStack Gateway - "127.0.0.1:4510-4559:4510-4559" # external services port range - "127.0.0.1:443:443" # LocalStack HTTPS Gateway (Pro) environment: # Activate LocalStack for AWS: https://docs.localstack.cloud/getting-started/auth-token/ - LOCALSTACK_AUTH_TOKEN=${LOCALSTACK_AUTH_TOKEN:?} # required for Pro # LocalStack configuration: https://docs.localstack.cloud/references/configuration/ - DEBUG=${DEBUG:-0} - PERSISTENCE=${PERSISTENCE:-0} volumes: - "${LOCALSTACK_VOLUME_DIR:-./volume}:/var/lib/localstack" - "/var/run/docker.sock:/var/run/docker.sock"Start the container by running the following command:
docker compose upPlease note that there are a few pitfalls when configuring your stack manually via docker-compose (e.g., required container name, Docker network, volume mounts, and environment variables). We recommend using the LocalStack CLI to validate your configuration, which will print warning messages in case it detects any potential misconfigurations:
localstack config validateDocker
Section titled “Docker”You can also directly start the LocalStack container using the Docker CLI instead of Docker-Compose. This method requires more manual steps and configuration, but it gives you more control over the container settings.
Prerequisites
Section titled “Prerequisites”Please make sure that you have a working Docker installation on your machine before moving on.
You can check if Docker is correctly configured on your machine by executing docker info in your terminal.
If it does not report an error (but shows information on your Docker system), you’re good to go.
Starting LocalStack with Docker
Section titled “Starting LocalStack with Docker”You can start the Docker container simply by executing the following docker run command:
docker run \ --rm -it \ -p 127.0.0.1:4566:4566 \ -p 127.0.0.1:4510-4559:4510-4559 \ -p 127.0.0.1:443:443 \ -e LOCALSTACK_AUTH_TOKEN=${LOCALSTACK_AUTH_TOKEN:?} \ -v /var/run/docker.sock:/var/run/docker.sock \ localstack/localstack-proIf you want to deploy LocalStack in your Kubernetes cluster, you can use Helm.
Prerequisites
Section titled “Prerequisites”Deploy LocalStack using Helm
Section titled “Deploy LocalStack using Helm”You can deploy LocalStack in a Kubernetes cluster by running these commands:
helm repo add localstack-repo https://helm.localstack.cloudhelm upgrade --install localstack localstack-repo/localstackThe Helm charts are not maintained in the main repository, but in a separate one.
What’s next?
Section titled “What’s next?”Now that you have LocalStack up and running, the following resources might be useful for your next steps:
- Check out our Quickstart guide if you are a new user to get started with LocalStack quickly.
- Use the LocalStack integrations to interact with LocalStack and other integrated tools, for example:
- Use
awslocalto use the AWS CLI against your local cloud! - Use the Serverless Framework with LocalStack!
- And many more!
- Use
- Find out how to configure LocalStack such that it perfectly fits your need.
- Use LocalStack in your CI environment to increase your code quality.
- Checkout LocalStack’s Cloud Developer Tools to further increase your development efficiency with LocalStack.
- Find out about the ways you can configure LocalStack.
Troubleshooting
Section titled “Troubleshooting”The LocalStack CLI installation is successful, but I cannot execute localstack
Section titled “The LocalStack CLI installation is successful, but I cannot execute localstack”If you can successfully install LocalStack using pip but you cannot use it in your terminal, you most likely haven’t set up your operating system’s / terminal’s PATH variable (in order to tell them where to find programs installed via pip).
- If you are using Windows, you can enable the
PATHconfiguration when installing Python, as described in the official docs of Python. - If you are using a MacOS or Linux operating system, please make sure that the
PATHis correctly set up - either system wide, or in your terminal.
As a workaround you can call the LocalStack CLI python module directly:
python3 -m localstack.cli.mainThe localstack CLI does not start the LocalStack container
Section titled “The localstack CLI does not start the LocalStack container”If you are using the localstack CLI to start LocalStack, but the container is not starting, please check the following:
- Uncheck the Use kernel networking for UDP option in Docker Desktop (Settings → Resources → Network) or follow the steps in our documentation to disable it.
- Start LocalStack with a specific DNS address:
DNS_ADDRESS=0 localstack start- Remove port 53 as indicated in our standard
docker-compose.ymlfile.
How should I access the LocalStack logs on my local machine?
Section titled “How should I access the LocalStack logs on my local machine?”You can now avail logging output and error reporting using LocalStack logs. To access the logs, run the following command:
localstack logsAWS requests are now logged uniformly in the INFO log level (set by default or when DEBUG=0).
The format is:
AWS <service>.<operation> => <http-status> (<error type>)Requests to HTTP endpoints are logged in a similar way:
2022-09-12T10:39:21.165 INFO --- [ asgi_gw_0] localstack.request.aws : AWS s3.ListBuckets => 2002022-09-12T10:39:41.315 INFO --- [ asgi_gw_0] localstack.request.aws : AWS s3.CreateBucket => 2002022-09-12T10:40:04.662 INFO --- [ asgi_gw_0] localstack.request.aws : AWS s3.PutObject => 2002022-09-12T11:01:55.799 INFO --- [ asgi_gw_0] localstack.request.http : GET / => 200How should I share the LocalStack logs for troubleshooting?
Section titled “How should I share the LocalStack logs for troubleshooting?”You can share the LocalStack logs with us to help us identify issues. To share the logs, call the diagnostic endpoint:
curl -s localhost:4566/_localstack/diagnose | gzip -cf > diagnose.json.gzEnsure that the diagnostic endpoint is run after you have tried reproducing the affected task. After running the task, run the diagnostic endpoint and share the archive file with your team members or LocalStack Support.
My application cannot reach LocalStack over the network
Section titled “My application cannot reach LocalStack over the network”We have extensive network troubleshooting documentation available here.
If this does not solve your problem then please reach out.