LocalStack provides an easy-to-use test/mocking framework for developing Cloud applications.
Overview β’
Install β’
Example β’
Run β’
Usage β’
Releases β’
Contributing
β
π Docs β’
π» Pro version β’
βοΈ Feature coverage
LocalStack π» is a cloud service emulator that runs in a single container on your laptop or in your CI environment. With LocalStack, you can run your AWS applications or Lambdas entirely on your local machine without connecting to a remote cloud provider! Whether you are testing complex CDK applications or Terraform configurations, or just beginning to learn about AWS services, LocalStack helps speed up and simplify your testing and development workflow.
LocalStack supports a growing number of AWS services, like AWS Lambda, S3, Dynamodb, Kinesis, SQS, SNS, and many more! The Pro version of LocalStack supports additional APIs and advanced features. You can find a comprehensive list of supported APIs on our βοΈ Feature Coverage page.
LocalStack also provides additional features to make your life as a cloud developer easier! Check out LocalStack's Cloud Developer Tools for more information.
python
(Python 3.7 up to 3.11 supported)pip
(Python package manager)Docker
The easiest way to install LocalStack is via pip
:
pip install localstack
Note: Please do not use sudo
or the root
user - LocalStack should be installed and started entirely under a local non-root user. If you have problems with permissions in macOS High Sierra, install with pip install --user localstack
It installs the localstack-cli
which is used to run the Docker image that hosts the LocalStack runtime.
Start LocalStack inside a Docker container by running:
% localstack start -d
__ _______ __ __
/ / ____ _________ _/ / ___// /_____ ______/ /__
/ / / __ \/ ___/ __ `/ /\__ \/ __/ __ `/ ___/ //_/
/ /___/ /_/ / /__/ /_/ / /___/ / /_/ /_/ / /__/ ,<
/_____/\____/\___/\__,_/_//____/\__/\__,_/\___/_/|_|
π» LocalStack CLI 1.3.0
[20:22:20] starting LocalStack in Docker mode π³
[20:22:21] detaching
You can query the status of respective services on LocalStack by running:
% localstack status services
ββββββββββββββββββββββββββββ³ββββββββββββββ
β Service β Status β
β‘βββββββββββββββββββββββββββββββββββββββββ©
β acm β β available β
β apigateway β β available β
β cloudformation β β available β
β cloudwatch β β available β
β config β β available β
β dynamodb β β available β
...
To use SQS, a fully managed distributed message queuing service, on LocalStack, run:
% awslocal sqs create-queue --queue-name sample-queue
{
"QueueUrl": "https://localhost:4566/000000000000/sample-queue"
}
Learn more about LocalStack AWS services and using them with LocalStack's awslocal
CLI.
You can run LocalStack through the following options:
To start using LocalStack, check out our documentation on docs.localstack.cloud.
- LocalStack Configuration
- LocalStack in CI
- LocalStack Integrations
- LocalStack Tools
- Understanding LocalStack
- Troubleshoot
To use LocalStack with a graphical user interface, you can use the following UI clients:
Please refer to GitHub releases to see the complete list of changes for each release. For extended release notes, please refer to the LocalStack Discuss.
If you are interested in contributing to LocalStack:
- Start by reading our contributing guide.
- Check out our developer guide.
- Navigate our codebase and open issues.
We are thankful for all the contributions and feedback we receive.
To get in touch with LocalStack team for bugs/feature requests, support questions or general discussions, please use:
We are thankful to all the people who have contributed to this project.
We are also grateful to all our backers who have donated to the project. You can become a backer on Open Collective.
You can also support this project by becoming a sponsor on Open Collective. Your logo will show up here along with a link to your website.
Copyright (c) 2017-2023 LocalStack maintainers and contributors.
Copyright (c) 2016 Atlassian and others.
This version of LocalStack is released under the Apache License, Version 2.0 (see LICENSE.txt). By downloading and using this software you agree to the End-User License Agreement (EULA). To know about the external software we use, look at our third party software tools page.