2017-11-09 8 views

답변

0

데이터베이스 컨테이너 내에서 PostgreSQL이 사용되고 있으며 모든 DB가 될 수 있습니다. 도커 실행 작업을 만듭니다. VSTS는 로컬 호스트 또는 127.0.0.1를 통해 실행중인 데이터베이스 컨테이너에 연결을 허용하지 않습니다, 확인이

enter image description here

다음 단계가 중요하다 배경에 실행을 선택합니다. 쉘 스크립트를 사용하여 실행중인 데이터베이스 컨테이너의 IP를 찾으십시오.

#!/usr/bin/env bash 

IP=`docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' database` 
echo "##vso[task.setvariable variable=SPRING_DATASOURCE_URL;]jdbc:postgresql://$IP:5432/myDatabase" 

이 스크립트는 컨테이너의 IP를 찾아 IP를 기반으로 데이터 원본 URL을 만듭니다.

enter image description here

실행 메이븐 패키지는 평소와 같이, 지금은 통합 테스트를 위해 외부 데이터베이스 유지 관리에 대한 걱정없이 ... 데이터베이스, 실행 liquibase/이동 경로 등에 대해 테스트 할 수 있습니다.

enter image description here

하면 빌드 정리의 일환으로 도커 컨테이너를 제거해야합니다.