This repository builds a Docker image whose container is a client for interacting with different cloud providers (IBM Cloud, AWS, Azure).
The container includes the following tools:
- terraform cli
- IBM Cloud cli
- AWS cli
- Azure cli
- bash
- kubectl cli
- oc cli
- git cli
- perl cli
- jq cli
- yq3 cli
- yq4 cli
- helm cli
- terragrunt cli
Warning: The material contained in this repository has not been thoroughly tested. Proceed with caution.
To run this image, the following tools are required:
dockerclidockerbackend - Docker Desktop, colima, etc
Start the client to use it.
To run the
toolkitcontainer:docker run -itd --name toolkit quay.io/cloudnativetoolkit/cli-tools
Once the client is running in the background, use it by opening a shell in it.
To use the
toolkitcontainer, exec shell into it:docker exec -it toolkit /bin/bashYour terminal is now in the container.
Use this shell to run commands using the installed tools and scripts.
When you're finished running commands, to exit the client.
To leave the
toolkitcontainer shell, as with any shell:exitThe container will keep running after you exit its shell.
If the client stops:
To run the
toolkitcontainer again:docker start toolkit
The toolkit container is just a Docker container, so all Docker CLI commands work.
To use/build this image, the following tools are required:
Docker- kinda obvious, but since we are building, testing and running a Docker image, you need to have the tool availablenode/npm- (optional) used to consolidate the configuration and scripts for working with the image, it is highly recommended thatnpmis used; however, it is possible to run the scripts directly by looking atpackage.jsonand providing the appropriate values
To use the image, a local image of the tool is required. You can get the image either by pulling from Docker Hub or building locally:
npm run pullOR
npm run buildAfter that, start the image in an interactive terminal with:
npm startpackage.json- scripts and config for the image buildDockerfile- the docker image definitionconfig.yaml- the test config file for thecontainer-structure-testtoolscripts/- directory for shell scripts used bypackage.jsonscripts to build, test, and push the imagesrc/- directory containing files that should be included in the built image