Instalación, configuración e implementación de la solución
Para implementar esta solución, hay tres áreas principales en las que trabajar, como se describe en la siguiente sección.
- Preparación de la infraestructura de blockchain.
- Desarrollo y despliegue del contrato inteligente.
- Creación de la(s) aplicación(s) que hará uso de nuestro contrato inteligente.
oracle-blockchain-cms-plan-oracle.zip
Cree una red de Hyperledger Fabric, que inicialmente estará compuesta por una sola organización, pero se puede escalar fácilmente a tantos miembros como necesite.
Luego, procederemos a crear el contrato inteligente para manejar la lógica necesaria para persistir y administrar en blockchain las entidades requeridas por nuestro caso de uso comercial.
Una vez creado el proyecto de contrato inteligente, lo instalaremos y desplegaremos en la red blockchain que creamos antes, luego configuraremos las cuentas, inscripciones y finalmente ejecutaremos la inicialización del contrato inteligente y sus NFT.
En este punto, los métodos de contrato inteligente ya se han publicado a través de API Gateway de nuestra instancia de Oracle Blockchain, también conocida como RESTPROXY, por lo que están listos para ser utilizados por las aplicaciones cliente, en nuestro caso la aplicación web que ya hemos creado con VBCS, y proporcionaremos en la última sección.
Junto al último paso está la creación del cubo de almacenamiento de OCI donde se almacenarán los documentos y, por último, la reconfiguración de la aplicación de ejemplo de VBCS para apuntar a nuestra red de blockchain recién creada y al nuevo cubo configurado en nuestro arrendamiento. Una vez realizada toda la reconfiguración, la aplicación se desplegará en nuestro arrendamiento.
Creación de una red de Oracle Blockchain
Para la creación de una red de Hyperledger Fabric (HLF) basada en Oracle Blockchain, estamos utilizando Oracle Blockchain Cloud Service.
Vamos a crear una red HLF de instancia única, según el caso de uso, podemos mostrar la funcionalidad dentro de una sola organización que pertenece a la red. Las nuevas organizaciones pueden unirse a la red incorporando su propia instancia de Blockchain, lo que permite a los nuevos usuarios de estas organizaciones poseer sus carpetas o revisar el contenido de las carpetas existentes propiedad de otros miembros.
Creación de la instancia de fundador
Creación de Canal
Necesitamos unirnos a las organizaciones a nivel de canal para permitir la comunicación entre el fundador y el participante. Esta acción se ejecutará mediante la consola de servicio de blockchain.
Crear cuentas de usuario
Utilizaremos Oracle Identity Cloud Service para crear al menos un usuario para cada uno de los departamentos de las carpetas que se pueden intercambiar. Para cada uno de esos usuarios, se creará una cuenta para retener en ella las diferentes carpetas que poseen.
Crear inscripciones en los nodos de proxy REST
Oracle Blockchain Platform admite inscripciones en el proxy REST. Estas inscripciones se utilizan en códigos de cadenas en los que existen tokens FT o NFT, para asignar la identidad del emisor de llamada al rol que ejecuta la transacción. Para ello, debe crear la relación del usuario con el rol definido en blockchain y, para simplificar, puede nombrar el rol como usuario.
Nombre de usuario | Inscripción | Instancia |
---|---|---|
cmsrsk001 | cmsrsk001 | org1 |
cmsfin001 | cmsfin001 | org1 |
cmsleg001 | cmsleg001 | org1 |
- En la consola de servicio Blockchain de la instancia fundadora (org1), vaya al separador Nodos.
- Haga clic en el menú de hamburguesa además de restproxy y seleccione Ver o gestionar inscripciones.
- Seleccione Crear nueva inscripción.
- Defina el ID de inscripción como cmsrsk001, el ID de usuario como cmsrsk001 y haga clic en Inscribirse.
Preparar el entorno de desarrollo de Oracle Blockchain App Builder
La creación de un contrato inteligente de Hyperledger Fabric (HLF) requiere conocimientos intrínsecos sobre HLF, cómo codificar en Java, Typescript o GoLang, y cómo desplegar y gestionar todo el ciclo de vida del proyecto de contrato inteligente.
Oracle Blockchain App Builder se ha creado en dos tipos: puede utilizarlo como una herramienta de línea de comandos destinada a automatizar los pasos de creación y despliegue en procesos de integración y despliegue continuos, o bien puede utilizarlo como un plugin de Microsoft Visual Code. Ambos te permitirán ejecutar exactamente la misma funcionalidad, solo selecciona la que prefieras dependiendo de tus preferencias. Oracle Blockchain App Builder tiene las siguientes funciones:
- Desarrollo: el creador de aplicaciones de Oracle Blockchain creará todo el proyecto de código de cadena con solo crear lo que se conoce como un archivo de especificación personalizado. El proyecto incluirá todas las entidades codificadas, todos sus accesos junto con todos los métodos CRUD para gestionar esas entidades, así como la firma de cualquier método personalizado requerido para cualquier lógica de negocio no estándar o compleja requerida por su aplicación, que se convertirá en el único código necesario para ser implementado manualmente.
- Despliegue: una vez que el proyecto de código de cadena esté listo para la prueba, puede desplegarlo localmente en la red de Hyperledger Fabric preconfigurada o de forma remota en cualquier instancia de Oracle Blockchain Platform local o en la nube existente. Otra opción es empaquetar el proyecto que se desplegará manualmente a través de la consola de Oracle Blockchain.
- Prueba: una vez desplegado el proyecto, puede probar cualquiera de los métodos generados automáticamente o los métodos personalizados del proyecto de código de cadenas.
- Depurar: en caso de que utilice la extensión de Visual Studio Code, también podrá realizar una depuración línea por línea del código de cadenas.
Puede instalar cualquiera de las siguientes dos versiones de Oracle Blockchain App Builder disponibles:
- Si desea utilizar Oracle Blockchain App Builder como plugin de Microsoft Visual Studio, siga las instrucciones de Instalación y configuración de la extensión de Blockchain App Builder para Visual Studio Code.
- Si prefiere utilizar Oracle Blockchain App Builder como herramienta de línea de comandos, siga las instrucciones de Instalación y configuración de la CLI de Blockchain App Builder.
Si no se siente cómodo instalando este tipo de herramientas de desarrollo y todas sus dependencias, pero tiene acceso a Oracle Cloud, puede optar por crear una caja de desarrollo dedicada con todos estos productos ya instalados y preparados para su uso en la nube y acceder a ella de forma remota. Estas máquinas son rentables debido a la unidad de computación necesaria y solo se facturan mientras están activas y en ejecución.
Note:
En el laboratorio, para preparar una máquina en la nube con Visual Code Studio y el plugin de poco código de Oracle Blockchain App Builder instalado en ella, solo necesita ejecutar los pasos de Preparar configuración y configuración de entorno.Creación y configuración del cubo de OCI Object Storage
Configuraremos el cubo de OCI Object Storage que le permitirá almacenar y recuperar documentos de la aplicación web de Oracle Visual Builder.
Note:
Para obtener más información sobre cómo codificar una aplicación de Oracle Visual Builder para cargar o descargar archivos de OCI Object Storage, consulte: Carga/descarga de archivos de OCI Storage en una aplicación de Visual Builder.Para activar el uso de cubos a través de la API de REST que ofrecen los cubos de OCI Object Storage, debemos crear una clave de API de OCI relacionada con el usuario que puede ejecutar la API de REST. Ejecute las dos tareas de configuración siguientes para utilizar los cubos de OCI Object Storage en nuestra aplicación web de VBCS.
Para activar el uso de cubos de OCI Object Storage desde la aplicación Oracle Visual Builder, debe crear una clave de API de OCI para obtener acceso a los servicios de OCI a través de la API de REST.