GitLab CI에서 Docker Image를 빌드하고 ECR로 푸시

2623 단어 GitLab-CIECRGitLabAWS
원래 재료: GitLab Runner와 Kaniko로 Docker 이미지 빌드 - GeekFactory

다음과 같은 작업을 .gitlab-ci.yml
gitlab-ci.yml
build_image_with_kaniko:
  stage: build
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  script:
    - |
      cat > /kaniko/.docker/config.json <<EOF
      {
        "credsStore": "ecr-login"
      }
      EOF
      /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $ECR_URI:$CI_COMMIT_SHORT_SHA

GitLab에서 Ci/CD에서 참조하는 변수 설정으로 다음 환경 변수 설정
  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • ECR_URI
  • ex) 000000000000.dkr.ecr.ap-northeast-1.amazonaws.com/hoge




  • GitLab에서 위의 작업을 실행하고 ECR에 Image가 등록되면 OK

    포인트



    몇 가지 포인트가 있으므로 보충하십시오.
  • kaniko image 는 :debug 를 사용한다.
  • GitLab CI에서 작동하려면 sh가 필요하며 :debug 이미지 필요

  • kanikoentrypoint 재정의
  • 재정의하지 않으면 /kaniko/executor를 직접 실행하려고 할 때 오류가 발생합니다.


  • 참고


  • Building images with kaniko and GitLab CI/CD | GitLab
  • GoogleContainerTools/kaniko: Build Container Images In Kubernetes
  • GitLab Runner와 Kaniko로 Docker 이미지 빌드 - GeekFactory
  • 좋은 웹페이지 즐겨찾기