https://github.com/cloud-native-toolkit/image-cli-tools-ibmcloud
Container image with tools for interacting with IBM Cloud
https://github.com/cloud-native-toolkit/image-cli-tools-ibmcloud
Last synced: 4 months ago
JSON representation
Container image with tools for interacting with IBM Cloud
- Host: GitHub
- URL: https://github.com/cloud-native-toolkit/image-cli-tools-ibmcloud
- Owner: cloud-native-toolkit
- License: apache-2.0
- Created: 2022-07-07T18:47:43.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-05-15T03:13:50.000Z (about 1 year ago)
- Last Synced: 2025-06-22T03:02:56.235Z (12 months ago)
- Language: Dockerfile
- Size: 43 KB
- Stars: 0
- Watchers: 5
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# image-cli-tools-ibmcloud
Container image with tools for interacting with IBM Cloud.
This image is built upon [quay.io/cloudnativetoolkit/cli-tools-core](https://quay.io/cloudnativetoolkit/cli-tools-core) which has common tools for interacting with cloud environments, including **terraform**, **terragrunt**, **kubectl** and **oc** clis.
## Contents
This image adds the following:
- ibmcloud cli
- ibmcloud container-service plugin
- ibmcloud container-registry plugin
- ibmcloud observe-service plugin
- ibmcloud vpc-infrastructure plugin
## Container registry
The build automation pushes the built container image to [quay.io/cloudnativetoolkit/cli-tools-ibmcloud](https://quay.io/cloudnativetoolkit/cli-tools-ibmcloud)
### Floating tags
The floating image tags use the following convention:
- `latest` - the latest **alpine** version of the image (currently terraform v1.2)
- `alpine` - the latest **alpine** version of the image (currently terraform v1.2)
- `fedora` - the latest **fedora** version of the image (currently terraform v1.2)
- `v1.2` - the latest **alpine** version of the image using terraform v1.2
- `v1.1` - the latest **alpine** version of the image using terraform v1.1
- `v1.0` - the latest **alpine** version of the image using terraform v1.0
- `v1.2-alpine` - the latest **alpine** version of the image using terraform v1.2
- `v1.1-alpine` - the latest **alpine** version of the image using terraform v1.1
- `v1.0-alpine` - the latest **alpine** version of the image using terraform v1.0
- `v1.2-fedora` - the latest **fedora** version of the image using terraform v1.2
- `v1.1-fedora` - the latest **fedora** version of the image using terraform v1.1
- `v1.0-fedora` - the latest **fedora** version of the image using terraform v1.0
### Pinned tags
Each release within the repository corresponds to a pinned image tag that will never be moved to another image. The pinned tags use the following naming convention:
```text
{terraform version}-{release tag}-{base OS image}
```
where:
- `{terraform version}` - is the major and minor version of the terraform cli (e.g. v1.1)
- `{release tag}` - is the release tag for this repository (e.g. v1.0.0)
- `{base OS image}` - is the base OS image (`alpine` or `fedora`)
For example:
```text
v1.1-v1.0.0-alpine
```
## Usage
The image can be used by referring to the image url. The following can be used to run the container image interactively:
```shell
docker run -it quay.io/cloudnativetoolkit/cli-tools-ibmcloud
```
## Development
To build the default image using the latest version of terraform on alpine, run the following:
```shell
docker build -t cli-tools-ibmcloud .
```
### Changing terraform versions
The terraform version can be changed by passing the `TERRAFORM_VERSION` as a build arg. For example:
```shell
docker build --build-arg TERRAFORM_VERSION=v1.1 -t cli-tools-ibmcloud:v1.1 .
```
### Changing base OS versions
The base OS can be changed by passing the `BASE_OS` as a build arg. Only `alpine` and `fedora` are currently supported for this value. For example:
```shell
docker build --build-arg BASE_OS=fedora -t cli-tools-ibmcloud:fedora .
```