5장. reference
5.1. 아티팩트 저장소 미러
Maven의 리포지토리에는 다양한 유형의 빌드 아티팩트 및 종속 항목(모든 프로젝트 ScanSetting, 라이브러리 ScanSetting, 플러그인 또는 기타 프로젝트별 아티팩트)이 있습니다. 또한 S2I 빌드를 수행하는 동안 아티팩트를 다운로드할 위치도 지정합니다. 중앙 리포지토리를 사용하는 것 외에도 조직에서 로컬 사용자 지정 리포지토리(미러)를 배포하는 것이 일반적입니다.
미러를 사용하는 이점은 다음과 같습니다.
- 지리적으로 더 빠르고 빠르게 동기화된 미러를 사용할 수 있습니다.
- 리포지토리 콘텐츠를 더 잘 제어할 수 있는 기능
- 공용 서버 및 리포지토리에 의존하지 않고도 다양한 팀(개발자, CI) 간에 아티팩트를 공유할 수 있습니다.
- 빌드 시간 개선
종종 저장소 관리자는 미러에 대한 로컬 캐시 역할을 할 수 있습니다. 리포지토리 관리자가 http://10.0.0.1:8080/repository/internal/ 외부에 이미 배포 및 연결할 수 있다고 가정하면 S2I 빌드에서 다음 절차를 사용하여 애플리케이션의 빌드 구성에 MAVEN_MIRROR_URL
환경 변수를 제공하여 이 관리자를 사용할 수 있습니다.
절차
MAVEN_MIRROR_URL
변수를 적용할 빌드 구성의 이름을 확인합니다.oc get bc -o name
$ oc get bc -o name buildconfig/sso
Copy to Clipboard Copied! MAVEN_MIRROR_URL
환경 변수를 사용하여sso
의 빌드 구성을 업데이트합니다.oc set env bc/sso \ -e MAVEN_MIRROR_URL="http://10.0.0.1:8080/repository/internal/"
$ oc set env bc/sso \ -e MAVEN_MIRROR_URL="http://10.0.0.1:8080/repository/internal/" buildconfig "sso" updated
Copy to Clipboard Copied! 설정을 확인합니다.
oc set env bc/sso --list buildconfigs sso
$ oc set env bc/sso --list # buildconfigs sso MAVEN_MIRROR_URL=http://10.0.0.1:8080/repository/internal/
Copy to Clipboard Copied! - 애플리케이션의 새 빌드를 예약합니다.
애플리케이션 빌드 중에 Maven 종속성은 기본 공용 리포지토리 대신 리포지토리 관리자에서 가져옵니다. 또한 빌드가 완료된 후 미러가 빌드 중에 검색 및 사용된 모든 종속 항목으로 채워지는 것을 확인할 수 있습니다.