Git 저장소 검증
Git 저장소 검증 (Validating Git repositories)
ADD 명령은 저장소를 클론할 수 있고, 빌드 컨텍스트는 Git URL을 참조할 수 있어요. 이런 입력을 검증하면 신뢰할 수 있는 소스에서 검증된 버전으로 빌드하고 있음을 보장할 수 있어요.
이 가이드는 기본 버전 고정에서부터 서명된 커밋·태그 검증까지, Git 입력을 검증하는 정책 작성법을 가르쳐요.
출처: 문서
본문
사전 요구사항 (Prerequisites)
Introduction 문서의 정책 기초(정책 파일 만들기, 기본 Rego 문법, 정책이 빌드 중 어떻게 평가되는지)를 이해하고 있어야 해요.
Git 입력이란? (What are Git inputs?)
Git 저장소를 참조하는 Dockerfile 명령들:
# 특정 태그 클론
ADD https://github.com/moby/buildkit.git#v0.26.1 /buildkit
# 브랜치 클론
ADD https://github.com/user/repo.git#main /src
# 커밋 클론
ADD https://github.com/user/repo.git#abcde123 /src
빌드 컨텍스트도 Git 저장소일 수 있어요:
$ docker build https://github.com/user/repo.git#main
각 Git 참조는 정책 평가를 촉발해요. 정책에서 저장소 URL을 검사하고, 버전을 검증하고, 커밋 메타데이터를 확인하고, 서명을 검증할 수 있어요.
특정 참조 매칭 (Match specific references)
특정 저장소·태그·브랜치만 허용하고, 서명된 커밋을 요구하는 정책을 작성할 수 있어요. 구체적인 Rego 예시는 원본 문서를 참고해요.