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
buildx
so you can build for multiple architectures
- Start docker engine with
dind dockerd &
(if not using remote docker engine) - bootstrap your
buildx
with
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
docker
anddocker buildx
as usual
Build images and deploy with helm
- based on
drpsychick/dind-buildx
- includes
kubectl
andhelm
so 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
kubectl
andhelm
to deploy to your kubernetes cluster
Build images, test helm charts and deploy to kind
- based on
drpsychick/dind-buildx-helm
- includes
ct
andkind
so 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
- Circle CI: https://github.com/DrPsychick/ark-server-charts/blob/master/.circleci/config.yml
Build images and deploy with helm (without buildx
)
- based on
docker:dind
- includes
kubectl
andhelm
so 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
kubectl
andhelm
to deploy to your kubernetes cluster
Build images, test helm charts and deploy to kind (without buildx
)
- based on
drpsychick/dind-helm
- includes
ct
andkind
so 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
,kubeval
andkubeseal
so you can validate your manifests and encrypt your secrets for git - includes
helm
,kustomize
,ct
so 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
helm
and lint your charts usingct
kustomize
for environments and validate your manifests withkubeval
Run Ansible playbooks
- based on
ubuntu
oralpine
- 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
ubuntu
oralpine
- includes
ansible
,ansible-galaxy
,ansible-lint
- use it as pipeline image to run Ansible playbooks and lint or test Ansible roles or playbooks.