A collection of images that can be used in CI pipelines based on docker.
- CircleCI
- GitLab-CI
- ...
Instead of installing the dependencies on every run and possibly using different images for every stage (which is ok, don't get me wrong), you can use the image that has all the tools you need for your pipeline.
Included tools:
git,curl,jq
Build multi-arch docker images
- based on
docker:dind - includes
buildxso you can build for multiple architectures
- Start docker engine with
dind dockerd &(if not using remote docker engine) - bootstrap your
buildxwith
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker context create xbuilder
docker buildx create xbuilder --name xbuilder --use
docker buildx inspect --bootstrap- use
dockeranddocker buildxas usual
Build images and deploy with helm
- based on
drpsychick/dind-buildx - includes
kubectlandhelmso you can build your image and deploy with kubectl and/or helm
Same as above plus:
- provide kubernetes config and point to it with
$KUBECONFIG - use
kubectlandhelmto deploy to your kubernetes cluster
Build images, test helm charts and deploy to kind
- based on
drpsychick/dind-buildx-helm - includes
ctandkindso you can test your helm chart and deploy it to a kind node
Same as above plus:
- start a kind cluster with
kind create cluster - optionally forward localhost to docker engine host, if using remote docker engine
- test install your charts using
ct
Build images and deploy with helm (without buildx)
- based on
docker:dind - includes
kubectlandhelmso you can build your image and deploy with kubectl and/or helm
Same as above plus:
- provide kubernetes config and point to it with
$KUBECONFIG - use
kubectlandhelmto deploy to your kubernetes cluster
Build images, test helm charts and deploy to kind (without buildx)
- based on
drpsychick/dind-helm - includes
ctandkindso you can test your helm chart and deploy it to a kind node
Same as above plus:
- start a kind cluster with
kind create cluster - optionally forward localhost to docker engine host, if using remote docker engine
- test install your charts using
ct
Add apps to ArgoCD running on your Kubernetes cluster
- based on
bitnami/argo-cd - includes
kubectl,kubevalandkubesealso you can validate your manifests and encrypt your secrets for git - includes
helm,kustomize,ctso you can generate manifests and test your helm chart
- use it as pipeline image to control ArgoCD: install/sync apps, change RBAC, add repos, ...
- template charts with
helmand lint your charts usingct kustomizefor environments and validate your manifests withkubeval
Run Ansible playbooks
- based on
ubuntuoralpine - includes
ansible,ansible-galaxy,ansible-lint
- use it as pipeline image to run Ansible playbooks and lint or test Ansible roles or playbooks.
Run Ansible playbooks
- based on
ubuntuoralpine - includes
ansible,ansible-galaxy,ansible-lint
- use it as pipeline image to run Ansible playbooks and lint or test Ansible roles or playbooks.
Up- and download files from any S3 compatible service
- based on
alpine
- use it as pipeline image to up- or download files from S3.