Skip to content

A set of simple and reusable Features for Arch Linux development containers.

License

Notifications You must be signed in to change notification settings

bartventer/arch-devcontainer-features

Folders and files

NameName
Last commit message
Last commit date
Apr 10, 2024
Apr 10, 2024
Apr 10, 2024
Apr 10, 2024
Apr 10, 2024
Apr 10, 2024
Mar 16, 2024
Mar 16, 2024
Mar 16, 2024
Apr 10, 2024
Apr 10, 2024

Repository files navigation

Dev Container Features

Release Release Workflow Test Workflow License

Arch Linux logo Development Container 'Features'
A set of simple and reusable Features for Arch Linux development containers.

This repository contains a collection of features curated by @bartventer. While most of these features are built for Arch Linux, please refer to the "OS Support" section of each feature for specific operating system compatibility.

Table of Contents

Collected Features

common-utils

Common Utilities installs a set of common command line utilities, Oh My Zsh!, and sets up a non-root user on Arch Linux.

usage

"features": {
    "ghcr.io/bartventer/arch-devcontainer-features/common-utils:1": {
        "installZsh": true,
        "additionalPackages": "go nodejs npm",
        "configureZshAsDefaultShell": false,
        "installOhMyZsh": true,
        "installOhMyZshConfig": true,
        "username": "automatic",
        "userUid": "automatic",
        "userGid": "automatic"
    }
}

Additional options can be found in the feature documentation.

aws-cli

AWS CLI installs the AWS CLI along with needed dependencies. Useful for base Dockerfiles that often are missing required install dependencies like gpg.

usage

"features": {
    "ghcr.io/bartventer/arch-devcontainer-features/aws-cli:latest": {
        "version": "latest",
        "installSam": "standalone",
        "samVersion": "latest",
    }
}

Additional options can be found in the feature documentation.

docker-in-docker

Docker in Docker installs Docker and Docker Compose in a Docker container. This is useful for running Docker commands inside a Docker container.

usage

"features": {
    "ghcr.io/bartventer/arch-devcontainer-features/docker-in-docker:latest": {
        "version": "latest"
    }
}

Additional options can be found in the feature documentation.

docker-outside-of-docker

Docker outside of Docker re-uses the host docker socket, adding the Docker CLI to a container. This feature invokes a script to enable using a forwarded Docker socket within a container to run Docker commands.

usage

"features": {
    "ghcr.io/bartventer/arch-devcontainer-features/docker-outside-of-docker:latest": {
        "version": "latest",
        "dockerDashComposeVersion": "v2",
        "installDockerBuildx": true,
        "installDockerComposeSwitch": true
    }
}

Additional options can be found in the feature documentation.

terraform

Terraform installs the Terraform CLI and optionally Terragrunt and TFLint. Auto-detects the latest version and installs needed dependencies.

usage

"features": {
    "ghcr.io/bartventer/arch-devcontainer-features/terraform:latest": {
        "installTerragrunt": true,
        "installTflint": true,
        "installSentinel": true,
        "installTFsec": true,
        "installTerraformDocs": true
    }
}

Additional options can be found in the feature documentation.

Contributing

All contributions are welcome! Open a pull request to request a feature or submit a bug report.

License

This project is licensed under the MIT License.

Trademarks

The Arch Linux logo is a recognized trademark of Arch Linux. See the Arch Linux website for acceptable use and restrictions. The logo used in this README.md is sourced from this repository and is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.