🐳 Container image for an all-in-one DevOps environment with popular tools like Ansible, Terraform, kubectl, Helm, AWS CLI, Azure CLI, Git, Python and more.
DevOps Toolkit
🐳 Container image for an all-in-one DevOps environment with popular tools like Ansible, Terraform, kubectl, AWS CLI, Azure CLI, Git, Python and more...
https://hub.docker.com/r/tungbq/devops-toolkit/tags">
Key Features
- Comprehensive Toolset: Pre-installed with tools like Git, Python, Ansible, Terraform, kubectl, Helm, AWS CLI, Azure CLI, and more.
- Easy Integration: Use it directly or customize it with your preferred versions.
- Efficient Updates: Weekly updates ensure the latest versions and security patches.
- Configuration Reusability: Mounts host config folders for seamless reuse across sessions.
Getting Started
1. Quick Start
mkdir -p $HOME/.dtc # Skip this step if you already created the configuration folder before
docker pull tungbq/devops-toolkit:latest
docker run -it --rm --name devops-toolkit-demo1 \
-v $HOME/.dtc:/dtc \
--network host \
tungbq/devops-toolkit:latest
2. Run with custom tool config from host (.dtc)
Mount current directory and start the toolkitdocker run -it --name devops-toolkit-demo2 \
--volume "$PWD:$PWD" \
--volume "$HOME/.dtc:/dtc" \
--volume "$HOME/.ssh:/root/.ssh" \
--workdir "$PWD" \
--network host \
tungbq/devops-toolkit:latest
Adjust the docker run command base on your use cases
3. Run with tool config from host
docker run -it --name devops-toolkit-demo3 \
--volume "$HOME/.aws:/root/.aws" \
--volume "$HOME/.azure:/root/.azure" \
--volume "$HOME/.kube:/root/.kube" \
--volume "$HOME/.terraform.d:/root/.terraform.d" \
--volume "$HOME/.config/helm:/root/.config/helm" \
--volume "$HOME/.ansible:/root/.ansible" \
--volume "$HOME/.gitconfig:/root/.gitconfig" \
--volume "$HOME/.ssh:/root/.ssh" \
--volume "$PWD:$PWD" \
--workdir "$PWD" \
--network host \
tungbq/devops-toolkit:latest
Adjust the docker run command base on your use cases
4. Note
.dtcstands for DevOps Toolkit Configuration- You can replace
$HOME/.dtcwith any desired folder path on your VM. - Remove the
-v $HOME/.dtc:/dtcoption if you do not wish to store configurations on the host (not recommended for configuration reuse).
Versioning
We use the following versioning scheme:
- Repository Tags:
vX.Y.Z(e.g.,v1.2.3) - Docker Tags:
X.Y.Zorlatestfor the most recent version.
docker pull tungbq/devops-toolkit:1.2.3
docker pull tungbq/devops-toolkit:latest
For more details on versioning, check the release notes.
User Guide 📖
Explore the comprehensive guide below to gain insight into the detailed utilization of every tool within the toolkit.
- For detailed instructions on using specific tools, refer to: DevOps toolkit specific tool user guide
- For instructions on common run modes, visit DevOps toolkit common run mode
Demo 📺
- Checkout the Demo code and instruction here.
The DevOps Toolkit Core 🧰
Built on ubuntu:22.04 base image
| Name | Version | Release | Usage | | :--------- | :---------------------- | :--------------------------------------------------------------------------- | :------------------------------------------------- | | Python | PYTHONVERSION=3.11 | Check | python_usage | | Ansible | ANSIBLEVERSION=2.18.3 | Check | ansible_usage | | Terraform | TERRAFORMVERSION=1.11.2 | Check | terraform_usage | | Kubectl | KUBECTLVERSION=1.32.3 | Check | kubectl_usage | | Helm | HELMVERSION=3.17.2 | Check | helm_usage | | AwsCLI | AWSCLIVERSION=2.24.24 | Check | awscli_usage | | AzureCLI | AZURECLIVERSION=2.70.0 | Check | azurecli_usage | | PowerShell | PSVERSION=7.5.0 | Check | TODO |
And more tools to be implemented...
Contributing
- See: CONTRIBUTING.md
- Looking for the issue to work on? Check the list of our open issues good first issue
- Feel free to open a new issue if you encounter the toolkit bug or want to request more content about DevOps toolkit
- Submit a new issue (🐛) if you encounter the bug/error when using this toolkit
Hit the Star! ⭐
- If you find this repository helpful, kindly consider showing your appreciation by giving it a star ⭐ Thanks! 💖
