Files
obsidian/infra/platform/kaniko.md

1.6 KiB

title, updated, tags
title updated tags
Kaniko - K8s 네이티브 컨테이너 이미지 빌드 2026-04-12
k8s
image-build
kaniko

개요

Kaniko는 Google에서 만든 Kubernetes 네이티브 컨테이너 이미지 빌드 도구. Docker 데몬 없이 컨테이너 내부에서 Dockerfile을 빌드하고 레지스트리에 푸시할 수 있다.

도입 배경

  • K3s 클러스터에서 컨테이너 이미지를 빌드하기 위해 호스트(incus-kr1)에 Docker CE를 설치해 사용했으나, Kaniko 발견 후 Docker CE 제거 (2026-04-12)
  • Docker 데몬 불필요 → 호스트에 Docker 설치할 필요 없음
  • K8s Job/Pod으로 빌드 실행 가능

사용 방법

K8s Job으로 실행하는 기본 예시:

apiVersion: batch/v1
kind: Job
metadata:
  name: kaniko-build
spec:
  template:
    spec:
      containers:
        - name: kaniko
          image: gcr.io/kaniko-project/executor:latest
          args:
            - "--dockerfile=Dockerfile"
            - "--context=git://github.com/user/repo.git"
            - "--destination=registry.example.com/image:tag"
      restartPolicy: Never

컨텍스트 소스

  • Git 저장소: git://
  • S3/GCS 버킷
  • 로컬 디렉토리 (PVC 마운트)
  • tar 파일

레지스트리 인증

  • K8s Secret을 /kaniko/.docker/config.json에 마운트
  • 또는 --registry-mirror, --insecure-registry 플래그 사용

관련 문서