Kaniko 의 한계 부분에 대한 질문
안녕하세요 지식공유자님
소중한 지식 공유 감사드립니다!
강의를 들으면서 아래 빨간 부분이 이해가 잘 가지 않는데, 조금 더 구체적으로 설명해주실 수 있을까요?
외부에서 빌드하고 CI/CD 이 끝난 후에 Kaniko 로 빌드한다는 것이 잘 이해되지 않습니다 ㅜㅜ

답변 1
1
안녕하세요.
"기본적인 이미지"의 의미는 "파이프라인에서 생성되어야 하는 것을 제외한 모든 것들"이라고 봐주시면 됩니다.(무조건은 아닙니다. 당연히 환경마다 달라질 수 있겠죠?)
강의는 Python을 기반으로 하기 때문에, 파이프라인에서도 컨테이너 이미지를 생성하기 위한 빌드를 제외하면 추가로 빌드할 것들이 없었습니다.
하지만, 소스코드를 바이너리로 바꾸는 과정이 필요한 언어들(golang 등)은 파이프라인 내에서 추가적인 빌드가 필요할 겁니다. 이러한 과정을 위해 필요한 파일들을 언급한거다(굳이 CI/CD 파이프라인에서 받을 필요가 없는 것들) 라고 봐주시면 됩니다.
이외에도, 필수 패키지(net-tools, procps 등)가 될 수도 있고, 내가 운영하고 있는 환경에 맞춰 추가적인 무언가가 필요할 수도 있을 겁니다.
요약하면, kaniko의 태생적 한계(호스트에 다운로드 후 스냅샷 생성)를 극복하기 위해 다양한 옵션(--use-new-run, --single-snapshot)을 사용하게 되면 레이어에 대한 캐시 적중률 문제와 (거의 그럴 일은 없지만 동작방식의 한계로 인한)비정상적인 이미지가 생성되는 것을 막기 위해, 최대한 파이프라인 과정에서 생성되는 파일을 줄이고 캐시를 활용하자라는 취지로 말씀드렸습니다.(어느 정도의 스냅샷은 감수할 수 있도록요.)
감사합니다.
수강기간 연장 가능하실까요?
0
9
1
강의 듣는 중인데,
0
21
1
36강 오탈자가 있는 거 같습니다.
0
14
2
node.js 설치 관련 질문 드립니다
0
18
1
Cursor 설정
0
23
1
맥북으로 RDP 연결 질문
0
27
2
라우팅 테이블 설정 중 궁금한게 있습니다.
0
33
1
수강 연장 가능하면 요청 드립니다.
0
25
2
JPA Repository 질문이 있습니다!
1
32
2
페이지네이션 처리를 쿼리에서 하는 방식 질문
1
35
1
디바이스 페어링 문의
0
31
2
yml 작성하다가 에러 발생해서 문의 드립니다.
0
38
2
(강의 6분 50초 부분) Workspace 안에 index.html이 비어있음
0
32
2
섹션2. 1.5쿠버네티스_컨트롤플레인_노드와_워커_노드_그리고 kubeadm으로 쿠버네티스 직접 구성하기-v1.30 오류
0
36
2
cosign tlog 관련 409에러
1
72
2
gitleaks 시크릿 스캔의 기준에 대한 질문입니다.
1
71
2
gitlab-ci.yml과 CI/CD 파이프라인 까지 수강중입니다.
0
77
2
first before
1
84
1
Private Subnet과 Gitlab
0
238
2
AWS 역할에 대해서
1
351
1
강의 교안
1
277
1
DooD, DinD 또는 Kaniko 외 다른 방법은 없는걸까요?
2
481
1
artifacts 에 대한 질문이 있습니다!
1
256
1
App Runner 서비스 생성 시 실패
2
518
1





