Pour m'autoformer sur gitlab et la partie CI, j'ai remonté mon microk8s, installé gitlab en docker, connecté mon gitlab a kubernetes et ajouté un runner en contexte kubernetes.

Il ne restait plus qu'a prendre un projet docker, et a essayer de le builder avec upload dans ma registry privée.

Les tests avec les images docker et docker-dind m'ont posé plus de problèmes qu'autre chose. Je me suis finalement rabbatu sur buildah.



Dans les problèmes rencontrés, il y'a eu le tagging, ou faute d'expérience, il a fallu que je comprenne quoi mettre dans les valeurs pour que ma registry ne rejette pas pour défaut de manifest.

Il a aussi fallu ajouter l'option de tls a la commande buildah pour qu'il n'échoue pas en se plaignant que ma registry ne supporte par https.

voici le .gitlab-ci.yml pour la partie build :

stages:
  - build

build and push to gitlab registry:

  stage: build
  image: fcadeillan/buildah

  variables:
    BUILDAH_FORMAT: "docker"
    IMAGE_NAME: "db2http"
    IMAGE_FQN: "192.168.1.30:5000/db2http"

  before_script:

  script:
    - buildah bud -t ${IMAGE_FQN}:${CI_COMMIT_REF_SLUG} .
    - buildah push --tls-verify=false docker://${IMAGE_FQN}:${CI_COMMIT_REF_SLUG}

Enfin voila une bonne chose de faite. Prochaine fois, on attaquera le déploiement sur kubernetes pour faire bonne figure !