A Docker Compose használata több tároló üzembe helyezéséhez

Ez a cikk bemutatja, hogyan helyezhet üzembe több Azure AI-tárolót. Pontosabban megtudhatja, hogyan használhatja a Docker Compose-t több Docker-tárolórendszerkép vezénylésére.

A Docker Compose egy többtárolós Docker-alkalmazások definiálási és futtatására szolgáló eszköz. A Compose-ban yaML-fájl használatával konfigurálhatja az alkalmazás szolgáltatásait. Ezután egyetlen parancs futtatásával hozza létre és indítsa el az összes szolgáltatást a konfigurációból.

Hasznos lehet több tárolórendszerkép vezénylése egyetlen gazdagépen. Ebben a cikkben összegyűjtjük az Olvasási és dokumentumintelligencia-tárolókat.

Előfeltételek

Ehhez az eljáráshoz több eszközt kell telepíteni és helyileg futtatni:

  • Azure-előfizetés. Ha még nem rendelkezik ilyen fiókkal, hozzon létre egy ingyenes fiókot a kezdés előtt.
  • Docker Engine. Ellenőrizze, hogy a Docker CLI működik-e egy konzolablakban.
  • Egy Azure-erőforrás a megfelelő tarifacsomaggal. Csak a következő tarifacsomagok működnek ezzel a tárolóval:
    • Azure AI Vision-erőforrás csak F0 vagy Standard tarifacsomaggal.
    • Dokumentumintelligencia-erőforrás csak F0 vagy Standard tarifacsomaggal.
    • Azure AI-szolgáltatások erőforrása az S0 tarifacsomaggal.
  • Ha kapus előzetes verziójú tárolót használ, a használatához ki kell fejeznie az online kéreleműrlapot .

Docker Compose-fájl

A YAML-fájl határozza meg az összes üzembe helyezendő szolgáltatást. Ezek a szolgáltatások egy DockerFile vagy egy meglévő tárolórendszerképre támaszkodnak. Ebben az esetben két előzetes verziójú képet fogunk használni. Másolja és illessze be a következő YAML-fájlt, és mentse docker-compose.yaml formátumban. Adja meg a megfelelő apikey, billing és EndpointUri értékeket a fájlban.

version: '3.7'
services:
  forms:
    image: "mcr.microsoft.com/azure-cognitive-services/form-recognizer/layout"
    environment:
       eula: accept
       billing: # < Your Document Intelligence billing URL >
       apikey: # < Your Document Intelligence API key >
       FormRecognizer__ComputerVisionApiKey: # < Your Document Intelligence API key >
       FormRecognizer__ComputerVisionEndpointUri: # < Your Document Intelligence URI >
    volumes:
       - type: bind
         source: E:\publicpreview\output
         target: /output
       - type: bind
         source: E:\publicpreview\input
         target: /input
    ports:
      - "5010:5000"

  ocr:
    image: "mcr.microsoft.com/azure-cognitive-services/vision/read:3.1-preview"
    environment:
      eula: accept
      apikey: # < Your Azure AI Vision API key >
      billing: # < Your Azure AI Vision billing URL >
    ports:
      - "5021:5000"

Fontos

Hozza létre a kötetek csomópont alatt megadott címtárakat a gazdagépen. Erre a megközelítésre azért van szükség, mert a könyvtáraknak létezniük kell, mielőtt kötetkötések használatával próbálná csatlakoztatni a lemezképeket.

A konfigurált Docker Compose-szolgáltatások elindítása

A Docker Compose-fájl lehetővé teszi egy meghatározott szolgáltatás életciklusának összes szakaszának kezelését: a szolgáltatások elindítását, leállítását és újraépítését; a szolgáltatás állapotának megtekintése; és naplóstreamelés. Nyisson meg egy parancssori felületet a projektkönyvtárból (ahol a docker-compose.yaml fájl található).

Megjegyzés

A hibák elkerülése érdekében győződjön meg arról, hogy a gazdagép megfelelően osztja meg a meghajtókat a Docker Engine-lel. Ha például az E:\publicpreview könyvtárként van használva a docker-compose.yaml fájlban, ossza meg az E meghajtót a Dockerrel.

A parancssori felületen futtassa a következő parancsot a docker-compose.yaml fájlban definiált összes szolgáltatás elindításához (vagy újraindításához):

docker-compose up

Amikor a Docker először hajtja végre a docker-compose up parancsot ezzel a konfigurációval, lekéri a szolgáltatáscsomópont alatt konfigurált lemezképeket, majd letölti és csatlakoztatja őket:

Pulling forms (mcr.microsoft.com/azure-cognitive-services/form-recognizer/layout:)...
latest: Pulling from azure-cognitive-services/form-recognizer/layout
743f2d6c1f65: Pull complete
72befba99561: Pull complete
2a40b9192d02: Pull complete
c7715c9d5c33: Pull complete
f0b33959f1c4: Pull complete
b8ab86c6ab26: Pull complete
41940c21ed3c: Pull complete
e3d37dd258d4: Pull complete
cdb5eb761109: Pull complete
fd93b5f95865: Pull complete
ef41dcbc5857: Pull complete
4d05c86a4178: Pull complete
34e811d37201: Pull complete
Pulling ocr (mcr.microsoft.com/azure-cognitive-services/vision/read:3.1-preview:)...
latest: Pulling from /azure-cognitive-services/vision/read:3.1-preview
f476d66f5408: Already exists
8882c27f669e: Already exists
d9af21273955: Already exists
f5029279ec12: Already exists
1a578849dcd1: Pull complete
45064b1ab0bf: Download complete
4bb846705268: Downloading [=========================================>         ]  187.1MB/222.8MB
c56511552241: Waiting
e91d2aa0f1ad: Downloading [==============================================>    ]  162.2MB/176.1MB

A képek letöltése után a rendszerkép-szolgáltatások elindulnak:

Starting docker_ocr_1   ... done
Starting docker_forms_1 ... doneAttaching to docker_ocr_1, docker_forms_1forms_1  | forms_1  | forms_1  | Notice: This Preview is made available to you on the condition that you agree to the Supplemental Terms of Use for Microsoft Azure Previews [https://go.microsoft.com/fwlink/?linkid=2018815], which supplement your agreement [https://go.microsoft.com/fwlink/?linkid=2018657] governing your use of Azure. If you do not have an existing agreement governing your use of Azure, you agree that your agreement governing use of Azure is the Microsoft Online Subscription Agreement [https://go.microsoft.com/fwlink/?linkid=2018755] (which incorporates the Online Services Terms [https://go.microsoft.com/fwlink/?linkid=2018760]). By using the Preview you agree to these terms.
forms_1  | 
forms_1  | 
forms_1  | Using '/input' for reading models and other read-only data.
forms_1  | Using '/output/forms/812d811d1bcc' for writing logs and other output data.
forms_1  | Logging to console.
forms_1  | Submitting metering to 'https://westus2.api.cognitive.microsoft.com/'.
forms_1  | WARNING: No access control enabled!
forms_1  | warn: Microsoft.AspNetCore.Server.Kestrel[0]
forms_1  |       Overriding address(es) 'http://+:80'. Binding to endpoints defined in UseKestrel() instead.
forms_1  | Hosting environment: Production
forms_1  | Content root path: /app/forms
forms_1  | Now listening on: http://0.0.0.0:5000
forms_1  | Application started. Press Ctrl+C to shut down.
ocr_1    | 
ocr_1    | 
ocr_1    | Notice: This Preview is made available to you on the condition that you agree to the Supplemental Terms of Use for Microsoft Azure Previews [https://go.microsoft.com/fwlink/?linkid=2018815], which supplement your agreement [https://go.microsoft.com/fwlink/?linkid=2018657] governing your use of Azure. If you do not have an existing agreement governing your use of Azure, you agree that your agreement governing use of Azure is the Microsoft Online Subscription Agreement [https://go.microsoft.com/fwlink/?linkid=2018755] (which incorporates the Online Services Terms [https://go.microsoft.com/fwlink/?linkid=2018760]). By using the Preview you agree to these terms.
ocr_1    |
ocr_1    | 
ocr_1    | Logging to console.
ocr_1    | Submitting metering to 'https://westcentralus.api.cognitive.microsoft.com/'.
ocr_1    | WARNING: No access control enabled!
ocr_1    | Hosting environment: Production
ocr_1    | Content root path: /
ocr_1    | Now listening on: http://0.0.0.0:5000
ocr_1    | Application started. Press Ctrl+C to shut down.

A szolgáltatás rendelkezésre állásának ellenőrzése

Tipp

A docker images paranccsal listázhatja a letöltött tárolólemezképeket. A következő parancs például felsorolja az egyes letöltött tárolólemezképek azonosítóját, adattárát és címkéjét, táblázatként formázva:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Íme néhány példa a kimenetre:

IMAGE ID            REPOSITORY                                                                 TAG
2ce533f88e80        mcr.microsoft.com/azure-cognitive-services/form-recognizer/layout          latest
4be104c126c5        mcr.microsoft.com/azure-cognitive-services/vision/read:3.1-preview         latest

Tárolók tesztelése

Nyisson meg egy böngészőt a gazdagépen, és lépjen a localhost webhelyre a docker-compose.yaml fájlban megadott port használatával, például http://localhost:5021/swagger/index.html. Használhatja például a Try It (Kipróbálás) funkciót az API-ban a Dokumentumintelligencia-végpont teszteléséhez. Mindkét tároló swagger oldalának elérhetőnek és tesztelhetőnek kell lennie.

Dokumentumintelligencia-tároló

Következő lépések

Azure AI-tárolók