Share via


Konfigurera Read OCR Docker-containrar

Du kan konfigurera AZURE AI Vision Read OCR-containerns körningsmiljö med hjälp av kommandoargumenten docker run . Den här containern har flera obligatoriska inställningar, tillsammans med några valfria inställningar. Det finns flera exempel på kommandot. De containerspecifika inställningarna är faktureringsinställningarna.

Konfigurationsinställningar

Containern har följande konfigurationsinställningar:

Obligatoriskt Inställning Syfte
Ja ApiKey Spårar faktureringsinformation.
Nej ApplicationInsights Gör det möjligt att lägga till telemetristöd för Azure Application Insights i containern.
Ja Billing Anger slutpunkts-URI för tjänstresursen i Azure.
Ja Eula Anger att du har godkänt licensen för containern.
Nej Fluentd Skriver logg och, om du vill, måttdata till en Fluentd-server.
Nej HTTP-proxy Konfigurerar en HTTP-proxy för att göra utgående begäranden.
Nej Loggning Tillhandahåller ASP.NET Core-loggningsstöd för din container.
Nej Fästen Läser och skriver data från värddatorn till containern och från containern tillbaka till värddatorn.

Viktigt!

ApiKeyInställningarna , Billingoch Eula används tillsammans och du måste ange giltiga värden för alla tre. Annars startar inte containern. Mer information om hur du använder dessa konfigurationsinställningar för att instansiera en container finns i Fakturering.

Containern har också följande inställningar för containerspecifik konfiguration:

Obligatoriskt Inställning Syfte
Nej ReadEngineConfig:ResultExpirationPeriod endast v2.0-containrar. Resultat förfalloperiod i timmar. Standardvärdet är 48 timmar. Inställningen anger när systemet ska rensa igenkänningsresultat. Om resultExpirationPeriod=1till exempel rensar systemet igenkänningsresultatet 1 timme efter processen. Om resultExpirationPeriod=0rensar systemet igenkänningsresultatet när resultatet har hämtats.
Nej Cache:Redis endast v2.0-containrar. Aktiverar Redis-lagring för lagring av resultat. En cache krävs om flera ocr-containrar med läsbehörighet placeras bakom en lastbalanserare.
Nej Kö:RabbitMQ endast v2.0-containrar. Aktiverar RabbitMQ för att skicka uppgifter. Inställningen är användbar när flera läs-OCR-containrar placeras bakom en lastbalanserare.
Nej Kö:Azure:QueueVisibilityTimeoutInMilliseconds endast v3.x-containrar. Tiden för ett meddelande att vara osynligt när en annan arbetare bearbetar det.
Nej Storage::D ocumentStore::MongoDB endast v2.0-containrar. Aktiverar MongoDB för permanent resultatlagring.
Nej Storage:ObjectStore:AzureBlob:Anslut ionString endast v3.x-containrar. Azure Blob Storage-anslutningssträng.
Nej Storage:TimeToLiveInDays endast v3.x-containrar. Resultat förfalloperiod i dagar. Inställningen anger när systemet ska rensa igenkänningsresultat. Standardvärdet är 2 dagar, vilket innebär att ett resultat som lever längre än den perioden inte garanteras att hämtas. Värdet är heltal och måste vara mellan 1 dag och 7 dagar.
Nej StorageTimeToLiveInMinutes v3.2-model-2021-09-30-preview och nya containrar. Resultat förfalloperiod i minuter. Inställningen anger när systemet ska rensa igenkänningsresultat. Standardvärdet är 2 dagar (2 880 minuter), vilket innebär att alla resultat som är aktiva längre än den perioden inte garanteras att hämtas. Värdet är heltal och måste vara mellan 60 minuter och 7 dagar (1 0080 minuter).
Nej Uppgift:MaxRunningTimeSpanInMinutes endast v3.x-containrar. Maximal körningstid för en enskild begäran. Standardvärdet är 60 minuter.
Nej EnableSyncNTPServer endast v3.x-containrar, förutom v3.2-model-2021-09-30-preview och nyare containrar. Aktiverar NTP-serversynkroniseringsmekanismen, vilket säkerställer synkronisering mellan systemtid och förväntad aktivitetskörning. Observera att detta kräver extern nätverkstrafik. Standardvärdet är true.
Nej NTPServerAddress endast v3.x-containrar, förutom v3.2-model-2021-09-30-preview och nyare containrar. NTP-server för tidssynkronisering. Standardvärdet är time.windows.com.
Nej Monteringar:Delad endast v3.x-containrar. Lokal mapp för lagring av igenkänningsresultat. Standardvärdet är /share. För att köra container utan att använda Azure Blob Storage rekommenderar vi att du monterar en volym i den här mappen för att säkerställa att du har tillräckligt med utrymme för igenkänningsresultaten.

Konfigurationsinställning för ApiKey

Inställningen ApiKey anger den visionsresursnyckel som används för att spåra faktureringsinformation för containern. Du måste ange ett värde för ApiKey och värdet måste vara en giltig nyckel för visionsresursen som angetts för konfigurationsinställningen Billing .

Den här inställningen finns på följande plats:

  • Azure-portalen: Resurshantering för Azure AI-tjänster under Nycklar

ApplicationInsights-inställning

Med ApplicationInsights inställningen kan du lägga till telemetristöd för Azure Application Insights i containern. Application Insights ger djupgående övervakning av din container. Du kan enkelt övervaka din container för tillgänglighet, prestanda och användning. Du kan också snabbt identifiera och diagnostisera fel i containern.

I följande tabell beskrivs de konfigurationsinställningar som stöds i avsnittet ApplicationInsights .

Obligatoriskt Name Datatyp beskrivning
Nej InstrumentationKey String Instrumentationsnyckeln för Application Insights-instansen som telemetridata för containern skickas till. Mer information finns i Application Insights för ASP.NET Core.

Exempel:
InstrumentationKey=123456789

Konfigurationsinställning för fakturering

Inställningen Billing anger slutpunkts-URI för Azure AI-tjänstresurseni Azure som används för att mäta faktureringsinformation för containern. Du måste ange ett värde för den här konfigurationsinställningen och värdet måste vara en giltig slutpunkts-URI för en Azure AI-tjänstresurs i Azure. Containern rapporterar användning var 10:e till 15:e minut.

Den här inställningen finns på följande plats:

  • Azure-portalen: Översikt över Azure AI-tjänster , märkt Endpoint

Kom ihåg att lägga till vision/<version> routningen till slutpunkts-URI:n enligt följande tabell.

Obligatoriskt Name Datatyp beskrivning
Ja Billing String URI för faktureringsslutpunkt

Exempel:
Billing=https://westcentralus.api.cognitive.microsoft.com/vision/v3.2

Eula-inställning

Inställningen Eula anger att du har godkänt licensen för containern. Du måste ange ett värde för den här konfigurationsinställningen och värdet måste vara inställt på accept.

Obligatoriskt Name Datatyp beskrivning
Ja Eula String Godkännande av licens

Exempel:
Eula=accept

Azure AI-tjänstcontainrar licensieras enligt ditt avtal som styr din användning av Azure. Om du inte har ett befintligt avtal som styr din användning av Azure godkänner du att ditt avtal som styr användningen av Azure är Microsoft Online-prenumerationsavtalet, som innehåller villkoren för onlinetjänster. För förhandsversioner godkänner du även de kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure. Genom att använda containern godkänner du dessa villkor.

Inställningar för Fluentd

Fluentd är en datainsamlare med öppen källkod för enhetlig loggning. Fluentd Inställningarna hanterar containerns anslutning till en Fluentd-server. Containern innehåller en Fluentd-loggningsprovider som gör att din container kan skriva loggar och, om du vill, mätdata till en Fluentd-server.

I följande tabell beskrivs de konfigurationsinställningar som stöds i avsnittet Fluentd .

Name Datatyp beskrivning
Host String IP-adressen eller DNS-värdnamnet för Fluentd-servern.
Port Integer Porten för Fluentd-servern.
Standardvärdet är 24224.
HeartbeatMs Integer Pulsslagsintervallet i millisekunder. Om ingen händelsetrafik har skickats innan det här intervallet upphör att gälla skickas ett pulsslag till Fluentd-servern. Standardvärdet är 6 0000 millisekunder (1 minut).
SendBufferSize Integer Nätverksbuffertutrymmet, i byte, allokerat för sändningsåtgärder. Standardvärdet är 32 768 byte (32 kilobyte).
TlsConnectionEstablishmentTimeoutMs Integer Tidsgränsen i millisekunder för att upprätta en SSL/TLS-anslutning med Fluentd-servern. Standardvärdet är 1 0000 millisekunder (10 sekunder).
Om UseTLS värdet är inställt på false ignoreras det här värdet.
UseTLS Booleskt Anger om containern ska använda SSL/TLS för kommunikation med Fluentd-servern. Standardvärdet är "false".

Inställningar för HTTP-proxyautentiseringsuppgifter

Om du behöver konfigurera en HTTP-proxy för att göra utgående begäranden använder du följande två argument:

Name Datatyp beskrivning
HTTP_PROXY sträng Proxyn som ska användas, till exempel http://proxy:8888
<proxy-url>
HTTP_PROXY_CREDS sträng Eventuella autentiseringsuppgifter som krävs för att autentisera mot proxyn, username:passwordtill exempel . Det här värdet måste vara i gemener.
<proxy-user> sträng Användaren för proxyn.
<proxy-password> sträng Lösenordet som är associerat med <proxy-user> för proxyn.
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTP_PROXY=<proxy-url> \
HTTP_PROXY_CREDS=<proxy-user>:<proxy-password> \

Loggningsinställningar

Logging Inställningarna hanterar ASP.NET Core-loggningsstöd för din container. Du kan använda samma konfigurationsinställningar och värden för din container som du använder för ett ASP.NET Core-program.

Följande loggningsproviders stöds av containern:

Provider Syfte
Konsol ASP.NET Core-loggningsprovidern Console . Alla ASP.NET Core-konfigurationsinställningar och standardvärden för den här loggningsprovidern stöds.
Debug ASP.NET Core-loggningsprovidern Debug . Alla ASP.NET Core-konfigurationsinställningar och standardvärden för den här loggningsprovidern stöds.
Disk JSON-loggningsprovidern. Den här loggningsprovidern skriver loggdata till utdatamonteringen.

Det här containerkommandot lagrar loggningsinformation i JSON-format till utdatamonteringen:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output

Det här containerkommandot visar felsökningsinformation, prefixet med dbug, medan containern körs:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Console:LogLevel:Default=Debug

Diskloggning

Loggningsprovidern Disk stöder följande konfigurationsinställningar:

Name Datatyp beskrivning
Format String Utdataformatet för loggfiler.
Obs! Det här värdet måste anges för att json aktivera loggningsprovidern. Om det här värdet anges utan att ange en utdatamontering vid instansiering av en container uppstår ett fel.
MaxFileSize Integer Den maximala storleken i mb för en loggfil. När storleken på den aktuella loggfilen uppfyller eller överskrider det här värdet startas en ny loggfil av loggningsprovidern. Om -1 anges begränsas loggfilens storlek endast av den maximala filstorleken, om någon, för utdatamonteringen. Standardvärdet är 1.

Mer information om hur du konfigurerar ASP.NET Core-loggningsstöd finns i Inställningar filkonfiguration.

Monteringsinställningar

Använd bindningsmonteringar för att läsa och skriva data till och från containern. Du kan ange en indatamontering eller utdatamontering genom att --mount ange alternativet i kommandot docker run .

Azure AI Vision-containrarna använder inte indata- eller utdatamonteringar för att lagra tränings- eller tjänstdata.

Den exakta syntaxen för värdmonteringsplatsen varierar beroende på värdoperativsystemet. Dessutom kanske värddatorns monteringsplats inte är tillgänglig på grund av en konflikt mellan behörigheter som används av Docker-tjänstkontot och värdmonteringsplatsbehörigheterna.

Valfritt Name Datatyp beskrivning
Tillåts inte Input String Azure AI Vision-containrar använder inte detta.
Valfritt Output String Målet för utdatamonteringen. Standardvärdet är /output. Det här är platsen för loggarna. Detta inkluderar containerloggar.

Exempel:
--mount type=bind,src=c:\output,target=/output

Exempel på docker-körningskommandon

I följande exempel används konfigurationsinställningarna för att illustrera hur du skriver och använder docker run kommandon. När containern körs fortsätter den att köras tills du stoppar den.

  • Radfortsättningstecken: Docker-kommandona i följande avsnitt använder snedstrecket, \, som ett radfortsättningstecken. Ersätt eller ta bort detta baserat på värdoperativsystemets krav.
  • Argumentordning: Ändra inte ordningen på argumenten om du inte är mycket bekant med Docker-containrar.

Ersätt {argument_name} med dina egna värden:

Platshållare Värde Format eller exempel
{API_KEY} Slutpunktsnyckeln för visionsresursen på sidan resursnycklar. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Värdet för faktureringsslutpunkten är tillgängligt på sidan resursöversikt. Se samla in obligatoriska parametrar för explicita exempel.

Kommentar

Nya resurser som skapats efter den 1 juli 2019 använder anpassade underdomännamn. Mer information och en fullständig lista över regionala slutpunkter finns i Anpassade underdomännamn för Azure AI-tjänster.

Viktigt!

Alternativen Eula, Billingoch ApiKey måste anges för att köra containern. Annars startar inte containern. Mer information finns i Fakturering. ApiKey-värdet är nyckeln från sidan Vision-resursnycklar.

Container Docker-exempel

Följande Docker-exempel är för Read OCR-containern.

Grundläggande exempel

docker run --rm -it -p 5000:5000 --memory 16g --cpus 8 \
mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30 \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Loggningsexempel

docker run --rm -it -p 5000:5000 --memory 16g --cpus 8 \
mcr.microsoft.com/azure-cognitive-services/vision/read:3.2-model-2022-04-30 \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Logging:Console:LogLevel:Default=Information

Nästa steg