A collection of LocalStack related and managed Devcontainer Feature(s).
Features are self-contained units of installation code and development container configuration. Features are designed to install atop a wide-range of base container images (this repo focuses on debian based images).
Note
This repo follows the proposed DevContainer Feature distribution specification.
Warning
This repo currently a work in progress which might introduce breaking changes without notification.
- LocalStack: install the LocalStack CLI tool and any of the related Local™ tools for:
- AWS CLI
- AWS CDK
- AWS SAM CLI
- Terraform
- Pulumi
To reference a feature from this repository, add the desired features to a devcontainer.json
.
Each feature has a README.md
that shows how to reference the feature and which options are available for that feature.
The example below installs the LocalStack CLI declared in the ./src
directory of this repository.
See the relevant feature's README for supported options.
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu",
"features": {
"ghcr.io/localstack/devcontainer-feature/localstack-cli": {}
}
}
Similar to the devcontainers/features
repo, this repository has a src
folder.
Each feature has its own sub-folder, containing at least a devcontainer-feature.json
and an entrypoint script install.sh
.
├── src
│ ├── hello
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
│ ├── color
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
| ├── ...
│ │ ├── devcontainer-feature.json
│ │ └── install.sh
...
An implementing tool will composite the documented dev container properties from the feature's devcontainer-feature.json
file, and execute in the install.sh
entrypoint script in the container during build time.
Implementing tools are also free to process attributes under the customizations
property as desired.