Servicios de desarrollo para Apicurio Registry
Si existe una extensión para el registro de esquemas, como quarkus-apicurio-registry-avro
o quarkus-confluent-registry-avro
, los servicios de desarrollo para Apicurio Registry inicia automáticamente una instancia de Apicurio Registry en modo desarrollo y al ejecutar pruebas. Además, todos los canales Kafka en SmallRye Reactive Messaging se configuran automáticamente para utilizar este registro. Esta configuración automática sólo se aplica a los serializadores y deserializadores de las bibliotecas Apicurio Registry serde y de las bibliotecas Confluent Schema Registry serde, ya que en ellas se establecen las propiedades:
# for Apicurio Registry serde
mp.messaging.connector.smallrye-kafka.apicurio.registry.url=http://localhost:8081/apis/registry/v2
# for Confluent Schema Registry serde
mp.messaging.connector.smallrye-kafka.schema.registry.url=http://localhost:8081/apis/ccompat/v6
Activación/desactivación de los servicios de desarrollo para el registro de Apicurio
Los Servicios de Desarrollo para el Registro de Apicurio se activan automáticamente a menos que:
-
quarkus.apicurio-registry.devservices.enabled
se ajusta afalse
-
mp.messaging.connector.smallrye-kafka.apicurio.registry.url
está configurado -
mp.messaging.connector.smallrye-kafka.apicurio.registry.url
está configurado -
todos los canales de Kafka de Mensajería Reactiva tienen el atributo
apicurio.registry.url
establecido
Servicios de desarrollo para Apicurio Registry se basa en Docker para iniciar el registro. Si su entorno no soporta Docker, tendrá que iniciar el registro manualmente, o utilizar un registro ya en ejecución. En tal caso, puede configurar la URL del registro para todos los canales Kafka en SmallRye Reactive Messaging con una única propiedad. Para Apicurio Registry serde, es decir:
mp.messaging.connector.smallrye-kafka.apicurio.registry.url=... your Apicurio Registry URL...
Para Confluent Schema Registry serde, esto es:
mp.messaging.connector.smallrye-kafka.schema.registry.url=... your Confluent Schema Registry URL...
Registro compartido
La mayoría de las veces necesita compartir el registro entre aplicaciones. Dev Services for Apicurio Registry implementa un mecanismo de descubrimiento de servicios para que sus múltiples aplicaciones Quarkus ejecutadas en modo dev compartan un único registro.
Servicios de desarrollo para Apicurio Registry inicia el contenedor con la etiqueta quarkus-dev-service-apicurio-registry que se utiliza para identificar el contenedor.
|
Si necesita varios registros (compartidos), puede configurar el atributo quarkus.apicurio-registry.devservices.service-name
e indicar el nombre del registro. Busca un contenedor con el mismo valor o inicia uno nuevo si no encuentra ninguno. El nombre de servicio por defecto es apicurio-registry
.
El uso compartido está activado por defecto en modo desarrollo, pero desactivado en el modo de prueba. Puede desactivar el uso compartido con quarkus.apicurio-registry.devservices.shared=false
.
Ajuste del puerto
Por defecto, los servicios de desarrollo para Apicurio Registry elige un puerto aleatorio y configura la aplicación. Puede establecer el puerto configurando la propiedad quarkus.apicurio-registry.devservices.port
.
Tenga en cuenta que los canales Kafka en la mensajería reactiva de SmallRye se configuran automáticamente con el puerto elegido.
Configuración de la imagen
Dev Services para Apicurio Registry utiliza imágenes de apicurio/apicurio-registry-mem
. Puede seleccionar cualquier versión 2.x de https://hub.docker.com/r/apicurio/apicurio-registry-mem:
quarkus.apicurio-registry.devservices.image-name=apicurio/apicurio-registry-mem:latest-snapshot