Skip to content
Get Started for Free

Installation

LocalStack provides multiple installation paths depending on your development environment and requirements. We recommend a CLI-based installation for the most consistent local startup experience.

Use lstk to install, authenticate, and start LocalStack for Snowflake with minimal setup.

LocalStack for Snowflake features require an Auth Token to activate your running instance. lstk handles authentication through a browser-based login flow, while Docker and CI workflows can use LOCALSTACK_AUTH_TOKEN.

lstk is a lightweight CLI for LocalStack that manages the authentication and container lifecycle in a single workflow.

Requirement: You must have a working Docker installation before proceeding.

Terminal window
brew install localstack/tap/lstk
Terminal window
lstk start

The first execution initiates a browser-based login flow and, in an interactive terminal, prompts you to pick which emulator to run — choose s for Snowflake. Your choice is written to config.toml and used as the default on subsequent runs. Subsequent starts use credentials stored in your system keyring.

Already using lstk with a different default emulator?

Section titled “Already using lstk with a different default emulator?”

If your global config.toml already defaults to a different emulator (for example, AWS), target Snowflake for a specific project instead by creating a project-local .lstk/config.toml:

.lstk/config.toml
[[containers]]
type = "snowflake"
port = "4566"
Terminal window
lstk update

For more details, see the lstk documentation.

Use these methods when you need explicit container configuration or want to run LocalStack alongside other orchestrated services. For everyday local development, lstk is usually simpler — and lstk is also a good fit for CI, see CI Integration for lstk-based CI examples.

Use Docker Compose when you want a reusable configuration file that can be shared across a team or checked into a project repository. Create a docker-compose.yml with the following configuration:

services:
localstack:
container_name: '${LOCALSTACK_DOCKER_NAME:-localstack-snowflake}'
image: localstack/snowflake
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
environment:
# Activate LocalStack for Snowflake: https://docs.localstack.cloud/snowflake/getting-started/auth-token/
- LOCALSTACK_AUTH_TOKEN=${LOCALSTACK_AUTH_TOKEN:?} # required
- DEBUG=${DEBUG:-0}
- PERSISTENCE=${PERSISTENCE:-0}
volumes:
- '${LOCALSTACK_VOLUME_DIR:-./volume}:/var/lib/localstack'

Execute docker compose up to start.

Use the Docker CLI for one-off starts or when you want to test a container configuration before moving it into Compose:

Terminal window
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:?} \
localstack/snowflake

Manage local instances via a standalone desktop application. Download LocalStack Desktop here.

Installation issues typically fall into one of three areas: getting your chosen install method working, activating your license, or reaching the emulator over the network.

If you installed via lstk and LocalStack fails to start, authenticate, or pull its image, see lstk troubleshooting.

For first-run authentication (browser login, keyring tokens, or LOCALSTACK_AUTH_TOKEN in CI), refer to Authentication and the Auth Token guides.

If you started LocalStack with Docker Compose or the Docker CLI:

Ensure you have exported LOCALSTACK_AUTH_TOKEN in your shell before running docker compose up or docker run.

Stream container logs using the command that matches your install method:

Terminal window
lstk logs

For lstk CLI diagnostics (separate from container logs), see Logging.

If your Snowflake client cannot reach the emulator after installation, see the Getting Started FAQ.

Now that you’ve completed installation, proceed to the Auth Token guide to activate LocalStack and prepare your environment for local development.

Was this page helpful?