이 문서에서는 Spring Cloud Foundry Connector를 사용하여 Kf 마켓플레이스에 나와 있지 않은 MySQL 인스턴스(MySQL용 Cloud SQL 포함)에 앱을 바인딩하는 방법을 설명합니다. 이렇게 하면 마켓플레이스 요금제를 통해 프로비저닝된 서비스에 바인딩과 같이 MySQL 사용자 인증 정보가 앱에 삽입됩니다.
시작하기 전에
- Kf 클러스터에서 MySQL을 설치하고 액세스할 수 있는지 확인합니다.
- 앱용 데이터베이스가 이미 생성되었는지 확인합니다.
- 앱을 실행하는 공간을 타겟팅했는지 확인합니다.
사용자 제공 인스턴스 만들기
Kf에서 앱을 MySQL 인스턴스에 성공적으로 바인딩하는 경우 최소 환경 변수는 URI입니다(예: mysql://username:password@host:port/dbname
). 원하는 경우 추가 키-값 쌍을 포함할 수 있습니다. MySQL 문서는 URI 문자열을 만드는 데 유용합니다. 다음 예시는 기본 배포로 충분합니다.
kf cups service-instance-name -p '{"username":"username", "password":"password", "uri":"mysql://username:password@mysql-host:3306/database"}' -t "mysql"
앱 바인딩
사용자 제공 서비스가 생성되었습니다. 이제 앱을 인스턴스 이름에 바인딩할 수 있습니다.
kf bind-service application-name service-instance-name
변경사항을 적용하려면 앱을 다시 시작합니다.
kf restart application-name
앱에 제공되는 새 환경 변수를 확인할 수 있습니다.
kf vcap-services application-name
사용자 제공 인스턴스 업데이트
바인딩된 앱에 전달해야 하는 환경 변경사항(예: URI에서 암호나 호스트 업데이트 또는 새 키-값 쌍 추가)이 있으면 사용자 제공 인스턴스를 업데이트할 수 있습니다.
kf uups service-instance-name -p '{"uri":"new-uri", "some-new-key": "some-new-value"}'
kf unbind-service application-name service-instance-name
kf bind-service application-name service-instance-name