Slide 1

Slide 1 text

 GITLAB CI  JERRY CHENG

Slide 2

Slide 2 text

 • Jerry Cheng • DevOps Engineer •  Software Engineer  Agile (?) DevOps   •  

Slide 3

Slide 3 text

AGENDA •   CI/CD • Why Gitlab CI •  Gitlab CI •   Gitlab

Slide 4

Slide 4 text

 CI/CD

Slide 5

Slide 5 text

CI/CD  Syntax Check Test Build Artifacts Deploy Syntax Check Test Build Artifacts Deploy Syntax Check Test Build Artifacts Deploy

Slide 6

Slide 6 text

WHY GITLAB CI • ! "Gitlab CI  Gitlab  •  " .gitlab-ci.yml    •  job  container  " •  Container Registry

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

 .GITLAB-CI.YML  CI/CD https://docs.gitlab.com/ce/ci/yaml/

Slide 11

Slide 11 text

SCRIPT https://gitlab.com/gitlab-ci-start/sayhi

Slide 12

Slide 12 text

  IMAGE https://gitlab.com/gitlab-ci-start/use-image • Image   •  

Slide 13

Slide 13 text

STAGES & JOB https://gitlab.com/gitlab-ci-start/stages-and-job

Slide 14

Slide 14 text

ARTIFACTS & DEPENDENCIES • Artifacts • Job   • Composer install >> ./vendor • Dependencies •   job  https://gitlab.com/gitlab-ci-start/artifacts

Slide 15

Slide 15 text

 DOCKER • Services •  Link  container • Docker in Docker https://gitlab.com/gitlab-ci-start/use-docker

Slide 16

Slide 16 text

BUILD & DEPLOY composer install docker build (nginx/php) deploy (qa) tag (deploy to staging) deploy to production https://gitlab.com/gitlab-ci-start/build-and-deploy

Slide 17

Slide 17 text

 GITLAB • Docker • Kubernetes

Slide 18

Slide 18 text

DOCKER  GITLAB •  docker-compose • docker-compose pull && docker-compose up –d () •   host 22port  • https://docs.gitlab.com/omnibus/do cker/#install-gitlab-using-docker- compose

Slide 19

Slide 19 text

K8S ! GITLAB •  Helm chart (K8S  Package Manager)  •  • Gitlab  • Gitlab CI Runner (unprivileged) • Storage (PostgreSQL/Redis/Minio/Container Registry) • Nginx Ingress Controller ( #   tcp22  gitlab shell service) • Cert Manager • "! domain • gitlab.yourdomain • registry.yourdomain • minio.yourdomain •  • https://docs.gitlab.com/ce/install/kubernetes/gitlab _chart.html • Chart • https://gitlab.com/charts/gitlab/tree/master • https://gitlab.com/gitlab-ci-start/gitlab-chart-values

Slide 20

Slide 20 text

GITLAB CI RUNNER •   Gitlab  • ..  • https://docs.gitlab.com/runner/

Slide 21

Slide 21 text

  •   •  CI/CD  •   

Slide 22

Slide 22 text

THANKS FOR LISTEN