설치하기 전에 사전 준비 사항 과 Docker 를 사용한 설치에 대한 일반 지침을 검토하십시오.
이 통합은 온프레미스(On-premise) Nexus Repository Manager 배포와 안전한 연결을 보장하는 데 유용합니다.
지원되는 환경 및 버전, 사용자 권한을 포함하여 브로커되지 않은 Nexus Repository Manager와의 통합에 대한 정보는 Nexus Repository Manager 설정 을 참조하십시오. Nexus Container Registry와 브로커된 통합에 대한 정보는 Snyk Broker - 컨테이너 레지스트리 에이전트 를 참조하십시오.
Nexus 플러그인에 사용할 Broker 구성
Nexus 3 및 Nexus 2 구성을 위한 Docker Pull
Nexus 3 배포에서 Broker 클라이언트를 사용하려면 docker pull snyk/broker:nexus를 실행하십시오.
Nexus 2 배포에서 Broker 클라이언트를 사용하려면 docker pull snyk/broker:nexus2를 실행하십시오.
환경 변수의 정의는 Nexus Repository - Snyk Broker용 환경 변수 를 참조하십시오.
Nexus 3 및 Nexus 2 통합용 Broker 클라이언트 설정을 위한 Docker 실행 명령
다음 명령을 복사하여 Nexus 3와 함께 사용할 전체 구성이 완료된 Broker 클라이언트를 설정하십시오. 관련 구성을 제공하여 Docker 컨테이너를 실행할 수 있습니다.
Copy docker run --restart=always \
-p 7341:7341 \
-e BROKER_TOKEN=secret-broker-token \
-e BROKER_SERVER_URL=<broker-region-url> \
-e BASE_NEXUS_URL=https://[<user>:<pass>@]<your.nexus.hostname> \
-e BROKER_CLIENT_VALIDATION_URL=https://<your.nexus.hostname>/service/rest/v1/status[/check] \
-e RES_BODY_URL_SUB=https://<your.nexus.hostname>/repository \
snyk/broker:nexus 다음 명령을 복사하여 Nexus 2와 함께 사용할 전체 구성이 완료된 Broker 클라이언트를 설정하십시오. 관련 구성을 제공하여 Docker 컨테이너를 실행할 수 있습니다.
Nexus UI의 Administration 아래 서버 탭에서 마지막에 슬래시 없이 Base URL 항목을 선택하여 BASE_NEXUS_URL을 찾을 수 있습니다. 이는 일반적으로 /nexus로 끝나지만, 기본값이 아닌 배포의 경우 다를 수 있습니다. 사용자 지정 기본 URL이 있는 경우 리포지토리가 있는 URL을 가리키도록 NEXUS_URL 환경 변수도 설정해야 합니다. 기본적으로 이는 /nexus/content로 구성되지만 기본 URL과 유사한 형식을 따라야 합니다.
Broker 클라이언트 컨테이너 시작 및 Nexus Repository Manager 연결 확인
Broker 클라이언트 구성을 붙여넣어 Broker 클라이언트 컨테이너를 시작하십시오.
Broker 클라이언트의 /systemcheck 엔드포인트에 요청을 보내 연결 상태를 확인하십시오.
예: curl http://172.17.0.2:7341/systemcheck
성공 시 다음과 같은 형식의 출력이 표시됩니다.
{"brokerClientValidationUrl":"https://acme.com/service/rest/v1/status","brokerClientValidationMethod":"GET","brokerClientValidationTimeoutMs":5000,"brokerClientValidationUrlStatusCode":200,"ok":true}
또는 실패 시 다음과 같은 형식의 출력이 표시됩니다.
{"brokerClientValidationUrl":"https://acme.com/service/rest/v1/status","brokerClientValidationMethod":"GET","brokerClientValidationTimeoutMs":5000,"ok":false,"error":"ETIMEDOUT"}