Utiliser des conteneurs Docker dans des environnements déconnectés

Les conteneurs vous permettent d’exécuter des API Azure AI Services dans votre propre environnement et sont très utiles pour répondre à vos besoins spécifiques en matière de sécurité et de gouvernance des données. Les conteneurs déconnectés vous permettent d’utiliser plusieurs de ces API en étant déconnecté d’Internet. Actuellement, les conteneurs suivants peuvent être exécutés de cette manière :

Avant de tenter d’exécuter un conteneur Docker dans un environnement hors connexion, veillez à passer en revue les étapes à effectuer pour télécharger et utiliser correctement le conteneur. Par exemple :

  • Spécifications et recommandations relatives à l’ordinateur hôte.
  • Commande Docker pull que vous allez utiliser pour télécharger le conteneur.
  • Comment valider l’exécution d’un conteneur.
  • Comment envoyer des requêtes au point de terminaison du conteneur une fois celui-ci en cours d’exécution.

Demander l’accès à des conteneurs dans des environnements déconnectés

Complétez et envoyez le formulaire de demande pour demander l’accès aux conteneurs déconnectés d’Internet.

Le formulaire demande des informations sur vous, votre entreprise et le scénario d’utilisateur pour lequel vous allez utiliser le conteneur. Une fois le formulaire envoyé, l’équipe Azure AI services l’examinera et vous informera de sa décision par e-mail dans les 10 jours ouvrables.

Important

  • Dans le formulaire, vous devez utiliser une adresse e-mail associée à un ID d’abonnement Azure.
  • La ressource Azure que vous utilisez pour exécuter le conteneur doit avoir été créée avec l’ID d’abonnement Azure approuvé.
  • Vérifiez votre adresse e-mail (boîtes de réception et dossiers de courrier indésirable) pour obtenir des mises à jour sur l’état de votre application auprès de Microsoft.

Une fois l’approbation obtenue, vous pourrez exécuter le conteneur après l’avoir téléchargé à partir de Microsoft Container Registry, décrit plus loin dans cet article.

Vous ne pourrez pas exécuter le conteneur si votre abonnement Azure n’a pas été approuvé.

L’accès est limité aux clients qui remplissent les conditions suivantes :

  • Vous organisation doit être identifiée comme client ou partenaire stratégique de Microsoft.
  • Les conteneurs déconnectés sont censés s’exécuter entièrement hors connexion. Vos cas d’usage doivent donc répondre à l’une des exigences ci-dessous ou à des exigences similaires :
    • Environnement ou appareil(s) sans aucune connectivité à Internet.
    • Emplacement distant ayant occasionnellement accès à Internet.
    • Organisation soumise à une réglementation stricte interdisant l’envoi de tout type de données au cloud.
  • Vous avez rempli le formulaire de demande comme indiqué. Prêtez une attention particulière aux instructions contenues dans le formulaire pour fournir toutes les informations nécessaires à l’approbation de votre demande.

Acheter un plan tarifaire à niveaux d’engagement pour les conteneurs déconnectés

Créer une nouvelle ressource

  1. Connectez-vous au Portail Azure et sélectionnez Créer une ressource pour l’un des Azure AI services applicables listés ci-dessus.

  2. Entrez les informations applicables pour créer votre ressource. Veillez à sélectionner le niveau d’engagement Conteneurs déconnectés comme niveau tarifaire.

    Notes

    • Vous ne verrez l’option d’achat d’un niveau d’engagement que si vous avez été approuvé par Microsoft.
    • Les détails des prix sont fournis à titre indicatif uniquement.
  3. Au bas de la page, sélectionnez Vérifier + créer. Vérifiez les informations, puis sélectionnez Créer.

Configurer un conteneur pour une utilisation déconnectée

Consultez la documentation suivante pour connaître les étapes de téléchargement et de configuration du conteneur pour une utilisation hors connexion :

Service Speech

Service Language

Noms de variable d’environnement dans les déploiements Kubernetes

Certains conteneurs Azure AI, par exemple Traducteur, exigent que les utilisateurs passent des noms de variable d’environnement qui incluent des signes deux-points (:) lors de l’exécution du conteneur. Cela fonctionne correctement lorsque Docker est utilisé, mais Kubernetes n’accepte pas les deux-points dans les noms de variable d’environnement. Pour résoudre ce problème, vous pouvez remplacer les deux-points par des doubles traits de soulignement (__) lors d’un déploiement sur Kubernetes. Consultez l’exemple de format acceptable suivant pour les noms de variable d’environnement :

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

Cet exemple remplace le format par défaut pour les noms de variable d’environnement Mounts:License et Mounts:Output dans la commande d’exécution de Docker.

Mises à jour d’image conteneur et de licence

Les fichiers de licence conteneur sont utilisés comme clés pour déchiffrer certains fichiers dans chaque image conteneur. Si ces fichiers chiffrés sont mis à jour dans une nouvelle image conteneur, le fichier de licence dont vous disposez risque de ne pas démarrer le conteneur même s’il a fonctionné avec la version précédente de l’image conteneur. Pour éviter ce problème, nous vous recommandons de télécharger un nouveau fichier de licence à partir du point de terminaison de ressource de votre conteneur fourni dans le portail Azure après avoir extrait de nouvelles versions d’image de mcr.microsoft.com.

Pour télécharger un nouveau fichier de licence, vous pouvez ajouter DownloadLicense=True à votre commande docker run avec un montage de licence, votre clé API et votre point de terminaison de facturation. Pour obtenir des instructions détaillées, consultez la documentation de votre conteneur.

Enregistrements d’utilisation

Quand vous utilisez des conteneurs Docker dans un environnement déconnecté, le conteneur écrit des enregistrements d’utilisation dans un volume où ils sont collectés au fil du temps. Vous pouvez également appeler un point de terminaison REST pour générer un rapport sur l’utilisation du service.

Arguments pour le stockage de journaux

Dans le cadre d’une exécution dans un environnement déconnecté, le conteneur doit avoir accès à un montage de sortie pour y stocker les journaux d’utilisation. Par exemple, vous pouvez inclure -v /host/output:{OUTPUT_PATH} et Mounts:Output={OUTPUT_PATH} dans l’exemple ci-dessous, en remplaçant {OUTPUT_PATH} par le chemin où les journaux seront stockés :

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

Obtient des enregistrements en utilisant les points de terminaison du conteneur

Le conteneur fournit deux points de terminaison pour retourner des enregistrements sur son utilisation.

Obtenir tous les enregistrements

Le point de terminaison suivant fournit un rapport récapitulant toutes les données d’utilisation collectées dans le répertoire d’enregistrements de facturation monté.

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

Il retourne une réponse JSON similaire à l’exemple ci-dessous.

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

Obtenir les enregistrements pour un mois spécifique

Le point de terminaison suivant fournit un rapport récapitulant l’utilisation pendant un mois et une année spécifiques.

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

Il retourne une réponse JSON similaire à l’exemple ci-dessous :

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

Acheter un plan d’engagement pour utiliser des conteneurs dans des environnements déconnectés

Les plans d’engagement pour les conteneurs déconnectés ont une période d’engagement d’une année civile. Quand vous achetez un plan, vous êtes facturé immédiatement au plein tarif. Pendant la période d’engagement, vous ne pouvez pas modifier votre plan d’engagement. Toutefois, vous pouvez acheter des unités supplémentaires à un prix calculé au prorata des jours restants dans l’année. Vous avez jusqu’à minuit (UTC) le dernier jour de votre engagement pour mettre fin à un plan d’engagement.

Vous pouvez choisir un autre plan d’engagement dans les paramètres Tarification du niveau d’engagement de votre ressource.

Mettre fin à un plan d’engagement

Si vous décidez d’arrêter un plan d’engagement, sélectionnez Ne pas renouveler automatiquement pour votre ressource. Votre plan d’engagement expire à la date de fin de l’engagement affichée. Après cette date, le plan d’engagement ne vous est plus facturé. Vous pouvez continuer à utiliser la ressource Azure pour effectuer des appels d’API, en étant facturé au tarif du paiement à l’utilisation. Vous avez jusqu’à minuit (UTC) le dernier jour de l’année pour mettre fin à un plan d’engagement pour les conteneurs déconnectés et ne pas être facturé pour l’année suivante.

Dépannage

Si vous exécutez le conteneur avec un montage de sortie et la journalisation activée, il génère des fichiers journaux qui sont utiles pour résoudre les problèmes qui se produisent lors du démarrage ou de l’exécution du conteneur.

Conseil

Pour plus d’informations et de conseils sur la résolution des problèmes, consultez les questions fréquentes sur les conteneurs déconnectés.

Étapes suivantes

Présentation des conteneurs Azure AI