Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/content/docs/aws/capabilities/config/docker-images.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ docker pull localstack/localstack:latest

To use the LocalStack Community image, you don't need to sign-up for an account on [LocalStack Web Application](https://app.localstack.cloud).
The Community image is free to use and does not require a license to run.
The Community image can be used to run [local AWS services](/aws/) with [integrations](/aws/integrations/) on your local machine or in your [continuous integration pipelines](/aws/integrations/continuous-integration/).
The Community image can be used to run [local AWS services](/aws/services/) with [integrations](/aws/integrations/) on your local machine or in your [continuous integration pipelines](/aws/integrations/continuous-integration/).

The Community image also covers a limited set of [LocalStack Tools](/aws/tooling/) to make your life as a cloud developer easier.
You can use [LocalStack Desktop](/aws/capabilities/web-app/localstack-desktop/) or [LocalStack Docker Extension](/aws/tooling/localstack-docker-extension) to use LocalStack with a graphical user interface.
Expand Down
4 changes: 2 additions & 2 deletions src/content/docs/aws/capabilities/config/podman.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ template: doc
## Introduction

By default, the LocalStack CLI starts the LocalStack runtime inside a Docker container.
Docker may not be available on your system, and a popular alternative is [Podman](https://podman.io/getting-started/) which you can use to run LocalStack.
Docker may not be available on your system, and a popular alternative is [Podman](https://podman.io/get-started) which you can use to run LocalStack.
Podman support is still experimental, and the following docs give you an overview of the current state.

From the Podman docs:
Expand All @@ -32,7 +32,7 @@ It creates the following links:
- `/var/run/docker.sock -> /run/podman/podman.sock`

This package is available for some distros:
- https://archlinux.org/packages/community/x86_64/podman-docker/
- https://archlinux.org/packages/extra/x86_64/podman-docker/
- https://packages.ubuntu.com/oracular/podman-docker
- https://packages.debian.org/sid/podman-docker

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Overview
description: Cloud Pods provides a new way of collaborating in cloud application development workflows.
description: State Management in LocalStack allows you to save and load the state of your LocalStack instance.
template: doc
sidebar:
order: 1
Expand Down
4 changes: 2 additions & 2 deletions src/content/docs/aws/enterprise/k8s-operator.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ _Appears in:_
| `kind` _string_ | `LocalStack`
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br /><br />Servers may infer this from the endpoint the client submits requests to.<br /><br />Cannot be updated.<br /><br />In CamelCase.<br /><br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br /><br />Servers should convert recognized schemas to the latest internal value, and<br /><br />may reject unrecognized values.<br /><br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. |
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/object-meta/)_ | Refer to Kubernetes API documentation for fields of `metadata`. |
| `spec` _[LocalStackSpec](#localstackspec)_ | |
| `status` _[LocalStackStatus](#localstackstatus)_ | |

Expand All @@ -88,7 +88,7 @@ LocalStackList contains a list of LocalStack
| `kind` _string_ | `LocalStackList`
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br /><br />Servers may infer this from the endpoint the client submits requests to.<br /><br />Cannot be updated.<br /><br />In CamelCase.<br /><br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br /><br />Servers should convert recognized schemas to the latest internal value, and<br /><br />may reject unrecognized values.<br /><br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| `metadata` _[ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v/#listmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. |
| `metadata` _[ListMeta](https://kubernetes.io/docs/reference/kubernetes-api/common-definitions/list-meta/)_ | Refer to Kubernetes API documentation for fields of `metadata`. |
| `items` _[LocalStack](#localstack) array_ | |

#### LocalStackSpec
Expand Down
6 changes: 3 additions & 3 deletions src/content/docs/aws/enterprise/kubernetes-executor.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,9 @@ Lambda hot reloading & remote debugging are not supported in the Kubernetes exec

You can run the following services on Kubernetes clusters using the LocalStack Enterprise image:

- [DocumentDB](https://docs.localstack.cloud/user-guide/aws/docdb/)
- [MWAA](https://docs.localstack.cloud/user-guide/aws/docdb/)
- [RDS](https://docs.localstack.cloud/user-guide/aws/rds/) ([MySQL](https://docs.localstack.cloud/user-guide/aws/rds/#mysql-engine) & [MSSQL](https://docs.localstack.cloud/user-guide/aws/rds/#microsoft-sql-server-engine))
- [DocumentDB](/aws/services/docdb)
- [MWAA](/aws/services/docdb)
- [RDS](/aws/services/rds) ([MySQL](/aws/services/rds/#mysql-engine) & [MSSQL](/aws/services/rds/#microsoft-sql-server-engine))

To use Kubernetes as the runtime backend, set the `CONTAINER_RUNTIME` configuration variable to `kubernetes`.
Note that there are no service-specific configuration variables for these services.
4 changes: 2 additions & 2 deletions src/content/docs/aws/getting-started/auth-token.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ You have the option to run your LocalStack container in the background by append
The `localstack` CLI automatically detects the Auth Token and appropriately conveys it to the LocalStack container.

:::note
If you are using LocalStack with an Auth Token, it's necessary to download the [LocalStack Pro image](aws/capabilities/config/docker-images/#localstack-pro-image), which includes Pro services and several advanced features.
If you are using LocalStack with an Auth Token, it's necessary to download the [LocalStack Pro image](/aws/capabilities/config/docker-images#localstack-pro-image), which includes Pro services and several advanced features.
:::

### Docker
Expand All @@ -113,7 +113,7 @@ $ docker run \
localstack/localstack-pro
```

For more information about starting LocalStack with Docker, take a look at our [Docker installation](aws/getting-started/installation/#docker) guide.
For more information about starting LocalStack with Docker, take a look at our [Docker installation](/aws/getting-started/installation/#docker) guide.

### Docker Compose

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/aws/getting-started/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ With LocalStack, you can run your AWS applications or Lambdas entirely on your l

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](/aws/)
LocalStack supports a growing number of [AWS services](/aws/services/)
, like [Lambda](/aws/services/lambda), [S3](/aws/services/s3), [DynamoDB](/aws/services/dynamodb), [Kinesis](/aws/services/kinesis), [SQS](/aws/services/sqs), [SNS](/aws/services/sns), and more!
[LocalStack Pro](https://localstack.cloud/pricing) supports additional APIs and advanced features to make your cloud development experience a breeze!

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/aws/getting-started/installation.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -435,7 +435,7 @@ python3 -m localstack.cli.main
#### 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](aws/tooling/dns-server/#system-dns-configuration) to disable it.
- Uncheck the **Use kernel networking for UDP** option in Docker Desktop (**Settings** → **Resources** → **Network**) or follow the steps in our [documentation](/aws/tooling/dns-server#system-dns-configuration) to disable it.
- Start LocalStack with a specific DNS address:
```bash
DNS_ADDRESS=0 localstack start
Expand Down
10 changes: 5 additions & 5 deletions src/content/docs/aws/getting-started/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@ An internal SES LocalStack testing endpoint (`/_localstack/aws/ses`) is configur
## Prerequisites

- [LocalStack CLI](/aws/getting-started/installation/#installing-localstack-cli)
- [LocalStack Web Application account](https://app.localstack.cloud/sign-up) & [Auth Token](https://docs.localstack.cloud/getting-started/auth-token/)
- [LocalStack Web Application account](https://app.localstack.cloud/sign-up) & [Auth Token](/aws/getting-started/auth-token/)
- [Docker](https://docs.docker.com/get-docker/)
- [Python 3.11+](https://www.python.org/downloads/) & `pip`
- [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) & [`awslocal` wrapper](https://docs.localstack.cloud/user-guide/integrations/aws-cli/#localstack-aws-cli-awslocal)
- [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) & [`awslocal` wrapper](/aws/integrations/aws-native-tools/aws-cli/#localstack-aws-cli-awslocal)
- `jq`, `zip` & `curl`

You can start LocalStack using the `localstack` CLI.
Expand Down Expand Up @@ -104,7 +104,7 @@ pyenv global 3.11

### Setup the serverless image resizer

This application enables serverless image resizing using [S3](/aws/services/s3/), [SSM](/aws/services/ssm/), [Lambda](/aws/services/lambda/), [SNS](aws/services/sns/), and [SES](/aws/services/ses/).
This application enables serverless image resizing using [S3](/aws/services/s3/), [SSM](/aws/services/ssm/), [Lambda](/aws/services/lambda/), [SNS](/aws/services/sns/), and [SES](/aws/services/ses/).
A simple web interface allows users to upload and view resized images.
A Lambda function generates S3 pre-signed URLs for direct uploads, while S3 bucket notifications trigger image resizing.
Another Lambda function lists and provides pre-signed URLs for browser display.
Expand Down Expand Up @@ -356,6 +356,6 @@ To expand your LocalStack capabilities, explore the following based on your expe

- [Tutorials](/aws/tutorials): Check out our tutorials to learn how to use LocalStack across various AWS services and application stacks.
- [Supported Services](/aws/services): Explore LocalStack's emulated AWS services.
- [Capabilities](): Learn about LocalStack's capabilities including features like IAM policy stream, state management, and more.
- [Tooling](): Get details on LocalStack's tooling and integrations.
- [Capabilities](/aws/capabilities/): Learn about LocalStack's capabilities including features like IAM policy stream, state management, and more.
- [Tooling](/aws/tooling/): Get details on LocalStack's tooling and integrations.
- [Blog](https://blog.localstack.cloud): Read our blog posts about LocalStack and the latest enhancements for a better local development and testing experience.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ In particular, the setup consists of the following two steps.

This guide assumes that you have the following tools installed.

* LocalStack ([Install](https://docs.localstack.cloud/get-started/#installation))
* LocalStack ([Install](/aws/getting-started/installation))
* Serverless ([Install](https://www.serverless.com/framework/docs/getting-started/))

It also assumes that you already have a Serverless app set up consisting of a couple of Lambda functions and a `serverless.yml` file similar to the following.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ when building production-ready applications.

## Setting up an Application

We recommend using [jenv](https://www.jenv.be) to manage multiple Java runtimes.
We recommend using [jenv](https://github.com/jenv/jenv) to manage multiple Java runtimes.

### Starting a new Project

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ sidebar:
## Introduction

The [AWS Command Line Interface (CLI)](https://aws.amazon.com/cli/) is a unified tool for creating and managing AWS services via a command line interface.
All CLI commands applicable to services implemented within {/*[LocalStack](references/coverage/) TODO: I couldn't find this page in the new docs*/} can be executed when operating against LocalStack.
All CLI commands applicable to services implemented within [LocalStack](/aws/integrations/aws-native-tools/aws-cli/) can be executed when operating against LocalStack.

You can use the AWS CLI with LocalStack using either of the following approaches:

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/aws/integrations/aws-sdks/javascript.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ s3.send(new ListBucketsCommand({}))
:::note
In case of issues resolving S3 DNS record, we can fallback to `http://localhost:4566` in combination with the provider setting `forcePathStyle: true` (see the specific way of setting this parameter for each SDK above).
The S3 service endpoint is slightly different from the other service endpoints, because AWS is deprecating path-style based access for hosting buckets.
See [S3 documentation](user-guide/aws/s3) about endpoints. {/*TODO: fix link*/}
See [S3 documentation](/aws/services/s3) about endpoints.
:::

## Resources
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ To get started with LocalStack and DevContainers in VS Code, follow these steps:

* Filter by typing "localstack" in the search bar and select the **LocalStack Docker-in-Docker** template.

[Select official LocalStack Template (DinD)](public/images/aws/04a_select_template_dind.png)
[Select official LocalStack Template (DinD)](/aws/integrations/containers/devcontainers/#localstack-templates)

* Proceed through the configuration by selecting or entering values.
Pressing **Enter** through the options will apply default settings, which include:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ In the following, we provide a step-by-step guide for installing Crossplane in a
* LocalStack running in local Docker
* A local Kubernetes cluster:
* We can use the [embedded Kubernetes cluster](https://docs.docker.com/desktop/kubernetes) that ships with modern versions of Docker Desktop (can be easily enabled in the Docker settings)
* Alternatively, you can [create a local EKS cluster](https://docs.localstack.cloud/user-guide/aws/elastic-kubernetes-service/#create-an-embedded-kubernetes-cluster) in LocalStack directly, which will spin up a light-weight embedded `k3d` Kubernetes cluster in your Docker environment
* Alternatively, you can [create a local EKS cluster](/aws/services/eks/#create-an-embedded-kubernetes-cluster) in LocalStack directly, which will spin up a light-weight embedded `k3d` Kubernetes cluster in your Docker environment
* The [`helm`](https://helm.sh) and [`kubectl`](https://kubernetes.io/docs/tasks/tools/#kubectl) command-line clients installed

## Installing Crossplane in local Kubernetes
Expand Down Expand Up @@ -236,7 +236,7 @@ You can refer to the additional reading material to learn and explore more advan

* Kubernetes on Docker Desktop: https://docs.docker.com/desktop/kubernetes
* Kubernetes getting started guide: https://kubernetes.io/docs/setup
* EKS Kubernetes clusters on LocalStack: https://docs.localstack.cloud/user-guide/aws/elastic-kubernetes-service
* EKS Kubernetes clusters on LocalStack: https://docs.localstack.cloud/aws/services/eks/
* Crossplane user docs: https://docs.crossplane.io
* Crossplane AWS provider family: https://marketplace.upbound.io/providers/upbound/provider-family-aws
* Crossplane AWS provider source code: https://github.com/upbound/provider-aws
70 changes: 70 additions & 0 deletions src/content/docs/aws/integrations/messaging/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
services:
zookeeper:
image: confluentinc/cp-zookeeper:6.0.2
container_name: zookeeper
hostname: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000

kafka:
image: confluentinc/cp-kafka:6.0.2
container_name: kafka
hostname: kafka
restart: always
depends_on:
- zookeeper
ports:
- "9092:9092"
- "9101:9101"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
KAFKA_CONFLUENT_LICENSE_TOPIC_REPLICATION_FACTOR: 1
KAFKA_CONFLUENT_BALANCER_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
KAFKA_JMX_PORT: 9101
KAFKA_JMX_HOSTNAME: localhost
CONFLUENT_METRICS_REPORTER_BOOTSTRAP_SERVERS: kafka:29092
CONFLUENT_METRICS_REPORTER_TOPIC_REPLICAS: 1
CONFLUENT_METRICS_ENABLE: 'true'
CONFLUENT_SUPPORT_CUSTOMER_ID: 'anonymous'
KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'

kowl:
image: quay.io/cloudhut/kowl:v1.3.1
container_name: kowl
restart: always
ports:
- "8080:8080"
depends_on:
- kafka
environment:
- KAFKA_BROKERS=kafka:29092

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)
depends_on:
- kafka
- kowl
environment:
# Activate LocalStack Pro: 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"
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ sidebar:
order: 1
---

LocalStack Pro supports [AWS Managed Streaming for Kafka (MSK)](/aws/services/msk) {/*TODO: target doesn't exist yet */}and you can create Kafka clusters directly through the MSK API that will run in LocalStack.
LocalStack Pro supports [AWS Managed Streaming for Kafka (MSK)](/aws/services/msk) and you can create Kafka clusters directly through the MSK API that will run in LocalStack.
In some cases, you may want to run your own self-managed Kafka cluster and integrate it with your applications, like triggering Lambdas from a Kafka stream running in your own cluster.
The Lambda integration with self-managed Kafka clusters is also a LocalStack Pro feature.

## Running self-managed Kafka

You can find the [example Docker Compose](docker-compose.yml) file which contains a single-noded ZooKeeper and a Kafka cluster and a simple LocalStack setup as well as [Kowl](https://github.com/cloudhut/kowl), an Apache Kafka Web UI.
You can find the [example Docker Compose](https://github.com/localstack/localstack-docs/blob/master/src/content/docs/aws/integrations/messaging/docker-compose.yml) file which contains a single-noded ZooKeeper and a Kafka cluster and a simple LocalStack setup as well as [Kowl](https://github.com/cloudhut/kowl), an Apache Kafka Web UI.

1. Run Docker Compose:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This section provides a brief overview of how to develop your own extensions.

## Extensions API

LocalStack exposes a Python API for building extensions that can be found in the core codebase in [`localstack.extensions.api`](https://github.com/localstack/localstack/tree/master/localstack/extensions/api).
LocalStack exposes a Python API for building extensions that can be found in the core codebase in [`localstack.extensions.api`](https://github.com/localstack/localstack/tree/master/localstack-core/localstack/extensions/api).

The basic interface to implement is as follows:

Expand Down
Loading