En este documento, aprenderás a vincular tu aplicación a una instancia de MySQL que no aparece en el mercado de Kf (incluido Cloud SQL para MySQL) con Spring Cloud Foundry Connector. Esto hace que las credenciales de MySQL se inserten en la app, al igual que la vinculación con servicios aprovisionados a través de planes de mercado.
Antes de comenzar
- Asegúrate de tener MySQL instalado y que puedas acceder a él con tu clúster de Kf.
- Asegúrate de que la base de datos de tu app ya se haya creado.
- Asegúrate de haber orientado el espacio que ejecuta la app.
Crea la instancia proporcionada por el usuario
Para que Kf vincule correctamente una app a tu instancia de MySQL, la variable de entorno mínima es el URI (por ejemplo, mysql://username:password@host:port/dbname
). Se pueden incluir pares clave-valor adicionales si lo deseas. La documentación de MySQL puede ayudarte a crear una string de URI. El siguiente ejemplo debería ser suficiente para implementaciones básicas.
kf cups service-instance-name -p '{"username":"username", "password":"password", "uri":"mysql://username:password@mysql-host:3306/database"}' -t "mysql"
Vincula tu aplicación
Ahora que se creó el servicio proporcionado por el usuario, puedes vincular tu app con el nombre de la instancia:
kf bind-service application-name service-instance-name
Reinicia la app para aplicar los cambios:
kf restart application-name
Puedes confirmar las nuevas variables de entorno que se proporcionan a tu app:
kf vcap-services application-name
Actualiza la instancia proporcionada por el usuario
Si hay cambios en el entorno (por ejemplo, contraseña o actualización del host en el URI, o bien la adición de pares clave-valor nuevos) que se deben pasar a cualquier app vinculada a él, puedes actualizar la instancia proporcionada por el usuario.
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