Uso de contenedores de Docker en entornos desconectados

Los contenedores permiten ejecutar las API de servicios de Azure AI en su propio entorno y cumplen de manera ideal sus requisitos específicos de seguridad y gobernanza de datos. Los contenedores desconectados permiten usar varias de estas API sin conexión a Internet. Actualmente, los siguientes contenedores se pueden ejecutar de esta manera:

Antes de intentar ejecutar un contenedor de Docker en un entorno sin conexión, asegúrese de conocer los pasos para descargar y usar correctamente el contenedor. Por ejemplo:

  • Recomendaciones y requisitos del equipo host.
  • El comando pull de Docker que usará para descargar el contenedor.
  • Validación de que un contenedor está en ejecución.
  • Envío de consultas al punto de conexión del contenedor, una vez que se está ejecutando.

Solicitud de acceso para usar contenedores en entornos desconectados

Rellene y envíe el formulario de solicitud para solicitar acceso a los contenedores desconectados de Internet.

El formulario solicita información acerca del usuario y de su empresa, así como del escenario de usuario para el que se va a usar el contenedor. Después de enviar el formulario, el equipo de servicios de Azure AI lo revisará y le informará de la decisión por correo electrónico en un plazo máximo de 10 días laborables.

Importante

  • En el formulario, debe usar una dirección de correo electrónico asociada a un identificador de suscripción de Azure.
  • El recurso de Azure que se usa para ejecutar el contenedor se debe haber creado con el identificador de la suscripción de Azure aprobada.
  • Compruebe el correo electrónico (bandeja de entrada y carpetas de correo no deseado) para obtener las actualizaciones del estado de la aplicación por parte de Microsoft.

Una vez aprobado, podrá ejecutar el contenedor después de descargarlo de Microsoft Container Registry (MCR) que se describe más adelante en el artículo.

No podrá ejecutar el contenedor si su suscripción de Azure no se ha aprobado.

El acceso se limita a los clientes que cumplen los siguientes requisitos:

  • Su organización debe estar identificada como cliente estratégico o asociado de Microsoft.
  • Se espera que los contenedores desconectados se ejecuten completamente sin conexión, de ahí que los casos de uso deban cumplir uno de los requisitos siguientes o similares:
    • Entornos o dispositivos sin conectividad a Internet.
    • Ubicación remota que de vez en cuando tiene acceso a Internet.
    • Organización bajo una estricta regulación de no devolver ningún tipo de datos a la nube.
  • Aplicación completada como se ha indicado: preste mucha atención a las instrucciones que se dan en la aplicación para asegurarse de que aporta toda la información necesaria para la aprobación.

Compra de un plan de precios de nivel de compromiso para contenedores desconectados

Crear un nuevo recurso

  1. Inicie sesión en Azure Portal y seleccione Crear un nuevo recurso para uno de los servicios de Azure AI aplicables enumerados anteriormente.

  2. Escriba la información correspondiente para crear el recurso. Asegúrese de seleccionar Contenedores desconectados de nivel de compromiso como plan de tarifa.

    Nota

    • La opción de adquirir un nivel de compromiso solo se ve si se ha recibido la aprobación de Microsoft.
    • Los detalles de precios son solo un ejemplo.
  3. En la parte inferior de la página, seleccione Revisar y crear. Examine la información y seleccione Crear.

Configuración del contenedor para el uso desconectado

Consulta la siguiente documentación para conocer los pasos para descargar y configurar el contenedor para uso sin conexión:

Servicio Voz

Servicio de lenguaje

Nombres de variables de entorno en las implementaciones de Kubernetes

Algunos contenedores de Azure AI, por ejemplo Traductor, requieren que los usuarios pasen nombres de variables de entorno que incluyan dos puntos (:) al ejecutar el contenedor. Esto funcionará bien al usar Docker, pero Kubernetes no acepta dos puntos en los nombres de variables de entorno. Para resolverlo, puede reemplazar los dos puntos por caracteres de subrayado doble (__) al implementar en Kubernetes. Consulte el ejemplo siguiente de un formato aceptable para los nombres de las variables de entorno:

        env:  
        - name: Mounts__License
          value: "/license"
        - name: Mounts__Output
          value: "/output"

Este ejemplo reemplaza el formato predeterminado para los nombres de las variables de entorno Mounts:License y Mounts:Output en el comando docker run.

Actualizaciones de imágenes y licencias de contenedor

Los archivos de licencia de contenedor se usan como claves para descifrar determinados archivos dentro de cada imagen de contenedor. Si estos archivos cifrados se actualizan dentro de una nueva imagen de contenedor, es posible que el archivo de licencia que tenga no pueda iniciar el contenedor aunque funcione con la versión anterior de la imagen de contenedor. Para evitar este problema, se recomienda descargar un nuevo archivo de licencia del punto de conexión de recursos para el contenedor proporcionado en Azure Portal después de extraer nuevas versiones de imagen de mcr.microsoft.com.

Para descargar un nuevo archivo de licencia, puede agregar DownloadLicense=True al comando de ejecución de Docker junto con un montaje de licencia, la clave de API y el punto de conexión de facturación. Consulte la documentación del contenedor para obtener instrucciones detalladas.

Registros de uso

Cuando los contenedores de Docker se operan en un entorno sin conexión, el contenedor escribirá los registros de uso en un volumen en el que se recopilan a lo largo del tiempo. También puede llamar a un punto de conexión de REST para generar un informe sobre el uso del servicio.

Argumentos para almacenar registros

Cuando se ejecuta en un entorno desconectado, debe estar disponible un montaje de salida en el contenedor para almacenar los registros de uso. Por ejemplo, incluiría -v /host/output:{OUTPUT_PATH} y Mounts:Output={OUTPUT_PATH} en el ejemplo siguiente, y reemplazaría {OUTPUT_PATH} por la ruta de acceso donde se almacenarán los registros:

docker run -v /host/output:{OUTPUT_PATH} ... <image> ... Mounts:Output={OUTPUT_PATH}

Obtención de registros mediante los puntos de conexión del contenedor

El contenedor proporciona dos puntos de conexión para devolver registros sobre su uso.

Obtención de todos los registros

El siguiente punto de conexión proporcionará un informe que resume todo el uso recopilado en el directorio de registros de facturación montado.

https://<service>/records/usage-logs/

Devolverá un código JSON similar al ejemplo siguiente.

{
  "apiType": "noop",
  "serviceName": "noop",
  "meters": [
    {
      "name": "Sample.Meter",
      "quantity": 253
    }
  ]
}

Obtención de registros de un mes concreto

El siguiente punto de conexión proporcionará un informe que resume el uso durante un mes y año específicos.

https://<service>/records/usage-logs/{MONTH}/{YEAR}

Devolverá una respuesta JSON similar al ejemplo siguiente:

{
  "apiType": "string",
  "serviceName": "string",
  "meters": [
    {
      "name": "string",
      "quantity": 253
    }
  ]
}

Compra de un plan de compromiso para usar contenedores en entornos desconectados

Los planes de compromiso para contenedores sin conexión tienen un período de compromiso de un año natural. Al comprar un plan, se le cobrará el precio completo de inmediato. Durante el período de compromiso, no puede cambiar el plan de compromiso, pero puede comprar unidades adicionales a un precio prorrateado para los días que falten del año. Tiene hasta la medianoche (UTC) del último día del compromiso para finalizar un plan de compromiso.

Puede elegir otro plan de compromiso en la configuración de Precios de nivel de compromiso del recurso.

Finalización de un plan de compromiso

Si decide que no quiere seguir comprando un plan de compromiso, puede establecer la renovación automática del recurso en No renovar automáticamente. El plan de compromiso expirará en la fecha de finalización del compromiso mostrada. Después de esta fecha, no se le cobrará por el plan de compromiso. Podrá seguir usando el recurso de Azure para realizar llamadas API, según los precios de pago por uso. Tiene hasta la medianoche (UTC) del último día del año para finalizar un plan de compromiso para contenedores sin conexión y no se le cobrará el año siguiente.

Solución de problemas

Si ejecuta el contenedor con un montaje de salida y el registro habilitados, el contenedor genera archivos de registro que resultan útiles para solucionar problemas que se producen al iniciar o ejecutar el contenedor.

Sugerencia

Para más información e instrucciones para la solución de problemas, consulte Preguntas frecuentes sobre los contenedores sin conexión.

Pasos siguientes

Información general de los contenedores de Azure AI