Container image for an all-in-one DevOps environment with popular tools like Ansible, Terraform, kubectl, AWS CLI, Azure CLI, Git, and more...
Before you begin, make sure you have Docker installed. It's also beneficial to have a basic understanding of Docker concepts.
NOTE: If you'd refer using the official prebuilt docker image from DockerHub, you can skip this section! Jump to Use Docker Hub image for instead.
1. Clone the Repository:
git clone https://github.com/tungbq/devops-toolkit.git
2. Navigate to the Repository:
cd devops-toolkit
3. Build the DevOps toolkit image:
- Build with the default versions
docker build -t devops-toolkit:latest .
- Build with single custom version
docker build \
--build-arg TERRAFORM_VERSION=1.7.0 \
-t devops-toolkit:custom .
- Build with multiple custom versions
docker build \
--build-arg UBUNTU_VERSION=22.04 \
--build-arg PYTHON_VERSION=3.11.3 \
--build-arg ANSIBLE_VERSION=2.16.3 \
--build-arg TERRAFORM_VERSION=1.7.0 \
--build-arg KUBECTL_VERSION=1.29.2 \
--build-arg HELM_VERSION=3.14.2 \
--build-arg AWSCLI_VERSION=2.15.24 \
-t devops-toolkit:custom .
4. Test the toolkit image:
- Run below command to verify newly created image
cd scripts
chmod +x check_version_in_toolkit.sh
./check_version_in_toolkit.sh devops-toolkit:latest ./toolkit_info.json
DockerHub image tungbq/devops-toolkit
docker pull tungbq/devops-toolkit:latest
One we have the image ready, let's play with it!
- Start toolkit container
docker run -it --rm devops-toolkit:latest
- Run python command to check version
docker run --rm devops-toolkit:latest python3 --version
- Run ansible command to check version
docker run --rm devops-toolkit:latest ansible --version
Check out the full samples and instruction at samples
- Run with default docker network
docker run --rm devops-toolkit:latest samples/run_sample.sh
- Run with host network
docker run --network host --rm devops-toolkit:latest samples/run_sample.sh
Built on ubuntu:22.04
base image
Name | Version | Release |
---|---|---|
Python | PYTHON_VERSION=3.12.2 | Check |
Ansible | ANSIBLE_VERSION=2.16.4 | Check |
Terraform | TERRAFORM_VERSION=1.7.5 | Check |
Kubectl | KUBECTL_VERSION=1.29.3 | Check |
Helm | HELM_VERSION=3.14.3 | Check |
AwsCLI | AWSCLI_VERSION=2.15.30 | Check |
AzureCLI | AZURECLI_VERSION=2.58.0 | Check |
And more tools to be implemented...
- 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 want to request more content about DevOps Dockerfile
- If you find this repository helpful, kindly consider showing your appreciation by giving it a star ⭐ Thanks! 💖