More on day 3

This commit is contained in:
Julien Girardin
2020-01-13 16:25:06 +01:00
parent 3914160d28
commit c0d735ade2
6 changed files with 154 additions and 3 deletions

View File

@@ -18,13 +18,13 @@ chapters:
-
# Bien démarrer en local (minikube, kind)
# - k8s/kube-coin-intro.md
- k8s/softwar-dev-banalities.md
- k8s/software-dev-banalities.md
- k8s/on-desktop.md
- k8s/testing.md
- k8s/namespaces.md
- k8s/accessinternal.md
#- k8s/localkubeconfig.md
#- k8s/kubectlproxy.md
- k8s/namespaces.md
- k8s/testing.md
-
- k8s/configuration.md
@@ -33,6 +33,11 @@ chapters:
- k8s/helm.md
- k8s/create-chart.md
-
# - k8s/shippingimages.md # some overlap
- k8s/registries.md
- k8s/stop-manual.md
- k8s/ci-cd.md
# -
#- k8s/volumes.md
#- k8s/create-more-charts.md

View File

@@ -0,0 +1,5 @@
# Exercise -- write a simple pipeline
Let's create a simple pipeline with gitlab
The code is at: https://github.com/enix/kubecoin-build

40
slides/k8s/ci-cd.md Normal file
View File

@@ -0,0 +1,40 @@
## Jenkins/Jenkins-X
- Multi purpose CI
- Self-hosted CI for kubernetes
- testing in namespace, feature branch
.small[
```shell
$ curl -L "https://github.com/jenkins-x/jx/releases/download/v2.0.1103/jx-darwin-amd64.tar.gz" | tar xzv "jx"
$ ./jx boot
```
]
---
## Gitlab
- repository + registry + ci/cd integrated all-in-one
```shell
helm repo add gitlab https://charts.gitlab.io/
helm install gitlab gitlab/gitlab
```
---
## Tekton/knative
- knative is serverless project from google
- Tekton leverage knative to run pipeline
---
## ArgoCD
.small[
```shell
kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
```
]

81
slides/k8s/registries.md Normal file
View File

@@ -0,0 +1,81 @@
# Registries
There is lot of options to ship you container image to a registry
Those can be group in different categories:
- hosted / selfhosted
- with / without build system
---
## Docker registry
- [open-source](https://github.com/docker/distribution) and self-hosted
- Simple docker-based registry
- Support multiple storage backend
- Only support basic-authentification
- No build system
```shell
docker run -d -p 5000:5000 --name registry registry:2
```
or the dedicated plugin in minikube, microk8s, ...
---
## Harbor
- [open-source](https://github.com/goharbor/harbor) and self-hosted
- full-featured registry docker/helm registry
- advanced authentification mechanism
- multi-site synchronisation
- vulnerability scanning
- No build-system
```shell
helm repo add harbor https://helm.goharbor.io
helm install my-release harbor/harbor
```
---
## Gitlab
- Some part [open-source](https://gitlab.com/gitlab-org/gitlab-foss/) and self-hosted
- Or hosted: gitlab.com (free for opensource project, payed subscription otherwise)
- CI integrated (so in a way: build-system integrated)
```shell
helm repo add gitlab https://charts.gitlab.io/
helm install gitlab gitlab/gitlab
```
---
## Docker HUB
- hosted: [hub.docker.com](https://hub.docker.com)
- free for public image, payed subscription for private ones.
- build-system included
---
## Quay
- hosted (quay.io)[https://quay.io]
- free for public repository, payed subscription otherwise
- acquired by Redhat from CoreOS, opensourced recently (so self-hosted to ?)
- build-system included

View File

@@ -0,0 +1,3 @@
# sealed-secrets
TODO

17
slides/k8s/stop-manual.md Normal file
View File

@@ -0,0 +1,17 @@
# Automation && CI/CD
We already achieved:
- Find a way to Develop our application
- Test it manualy, and explore the way to write automated test for it
- Package it the way we wanted it
- Ship the image to a registry
We now have to:
- Deploy it
And so each time is made a change on the repository. Can we automate this a little bit ?