Compartir a través de


Personalización y reimplementación de un microservicio

En este tutorial se muestra cómo editar uno de los microservicios de la solución de supervisión remota, compilar una imagen del microservicio, implementar la imagen en el centro de Docker y, a continuación, usarla en la solución de supervisión remota. Para introducir este concepto, el tutorial usa un escenario básico donde llamar a una API de microservicio y cambiar el mensaje de estado de "Activo y correcto" a "Las nuevas modificaciones se hacen aquí".

La solución de supervisión remota usa microservicios creados mediante imágenes de Docker que se extraen de un centro de Docker.

En este tutorial, aprenderá a:

  • Editar y compilar un microservicio en la solución de supervisión remota
  • Crear una imagen de Docker
  • Insertar una imagen de Docker en un centro de Docker
  • Extraer una imagen de Docker nueva
  • Visualizar los cambios

Requisitos previos

Para utilizar este tutorial, necesitará:

Llamada API y visualización del estado de la respuesta

En esta parte, llame a la API de microservicio del administrador de IoT Hub predeterminada. La API devuelve un mensaje de estado que se cambia más adelante mediante la personalización del microservicio.

  1. Asegúrese de que la solución de supervisión remota se ejecuta localmente en su equipo.

  2. Busque el entorno de Postman descargado y ábralo.

  3. En Postman, escriba lo siguiente en GET: https://localhost:8080/iothubmanager/v1/status.

  4. Verá el valor devuelto y también debe ver "Estado": "Activo y correcto".

    Alive and Well Postman Message

Cambio de estado y creación de la imagen

Ahora cambie el mensaje de estado del microservicio del Administrador de IoT Hub a "Nuevas ediciones realizadas aquí" y vuelva a generar la imagen de Docker con este nuevo estado. Si experimenta problemas aquí, vea la sección Solución de problemas.

  1. Asegúrese de que el terminal esté abierto y cambie al directorio en que clonó la solución de supervisión remota.

  2. Cambie el directorio a "azure-iot-pcs-remote-monitoring-dotnet/services/iothub-manager/Services".

  3. Abra StatusService.cs en el editor de texto o el IDE que le guste.

  4. Busque el código siguiente:

    var result = new StatusServiceModel(true, "Alive and well!");
    

    y cámbielo por el código siguiente y guárdelo.

    var result = new StatusServiceModel(true, "New Edits Made Here!");
    
  5. Vuelva al terminal, pero ahora cambie al siguiente directorio: "azure-iot-pcs-remote-monitoring-dotnet/services/iothub-manager/scripts/docker".

  6. Para compilar la nueva imagen de Docker, escriba

    sh build
    

    o en Windows:

    ./build.cmd
    
  7. Para verificar que la nueva imagen se creó correctamente, escriba

    docker images 
    

El repositorio debe ser "azureiotpcs/iothub-manager-dotnet".

Successful docker image

Etiquetado e inserción de la imagen

Antes de poder insertar una nueva imagen de Docker en un centro de Docker, Docker espera el etiquetado de las imágenes. Si experimenta problemas aquí, vea la sección Solución de problemas.

  1. Busque el identificador de la imagen de Docker creada; para ello, escriba:

    docker images
    
  2. Para etiquetar la imagen con el tipo "prueba"

    docker tag [Image ID] [docker ID]/iothub-manager-dotnet:testing 
    
  3. Para insertar la imagen recién etiquetada con el centro de Docker, escriba

    docker push [docker ID]/iothub-manager-dotnet:testing
    
  4. Abra el explorador de Internet y vaya al centro de Docker e inicie sesión.

  5. Ahora debería ver la imagen de Docker recién insertada en el centro de Docker. Docker image in docker hub

Actualización de la solución de supervisión remota

Debe actualizar el archivo local docker-compose.yml para extraer la imagen de Docker nueva del centro de Docker. Si experimenta problemas aquí, vea la sección Solución de problemas.

  1. Vuelva al terminal y cambie al siguiente directorio: "azure-iot-pcs-remote-monitoring-dotnet/services/scripts/local".

  2. Abra docker-compose.yml en el editor de texto o el IDE que le guste.

  3. Busque el código siguiente:

    image: azureiotpcs/iothub-manager-dotnet:testing
    

    y cámbielo para que sea similar a la imagen siguiente y después guárdelo.

    image: [docker ID]/iothub-manager-dotnet:testing
    

Visualización del nuevo estado de respuesta

Para terminar, reimplemente una instancia local de la solución de supervisión remota y vea la nueva respuesta de estado en Postman.

  1. Vuelva al terminal y cambie al siguiente directorio: "azure-iot-pcs-remote-monitoring-dotnet/scripts/local".

  2. Inicie la instancia local de la solución de supervisión remota; para ello, escriba el siguiente comando en el terminal:

    docker-compose up
    
  3. Busque el entorno de Postman descargado y ábralo.

  4. En Postman, escriba la siguiente solicitud en GET: https://localhost:8080/iothubmanager/v1/status. Ahora debería ver "Estado": "Correcto. Las nuevas modificaciones se hacen aquí".

New Edits Made Here postman message

Solución de problemas

Si experimenta problemas, intente eliminar las imágenes y los contenedores de Docker del equipo local.

  1. Para quitar todos los contenedores, primero debe detener todos los contenedores en ejecución. Abra el terminal y escriba

    docker stop $(docker ps -aq)
    docker rm $(docker ps -aq)
    
  2. Para quitar todas las imágenes, abra el terminal y escriba

    docker rmi $(docker images -q)
    
  3. Puede comprobar si hay algún contenedor en la máquina; para ello, escriba

    docker ps -aq 
    

    Si se han quitado correctamente todos los contenedores, no debería aparecer nada.

  4. Puede comprobar si hay alguna imagen en la máquina; para ello, escriba

    docker images
    

    Si se han quitado correctamente todos los contenedores, no debería aparecer nada.

Pasos siguientes

En este tutorial, aprenderá a:

  • Editar y compilar un microservicio en la solución de supervisión remota
  • Crear una imagen de Docker
  • Insertar una imagen de Docker en un centro de Docker
  • Extraer una imagen de Docker nueva
  • Visualizar los cambios

Lo siguiente que hay que probar es personalizar el microservicio del simulador de dispositivos en la solución de supervisión remota.

Para más información sobre la solución de supervisión remota para los desarrolladores, consulte: