Konfigurowanie kontenerów platformy Docker w usłudze Translator
Usługi Azure AI zapewniają każdemu kontenerowi wspólną strukturę konfiguracji. Kontenery usługi Translator można łatwo skonfigurować do tworzenia architektury aplikacji usługi Translator zoptymalizowanej pod kątem niezawodnych możliwości chmury i lokalizacji brzegowej.
Środowisko uruchomieniowe kontenera docker run
usługi Translator jest skonfigurowane przy użyciu argumentów poleceń. Ten kontener ma zarówno wymagane, jak i opcjonalne ustawienia. Wymagane ustawienia specyficzne dla kontenera to ustawienia rozliczeń.
Ustawienia konfiguracji
Kontener ma następujące ustawienia konfiguracji:
Wymagania | Ustawienie | Purpose |
---|---|---|
Tak | ApiKey | Śledzi informacje o rozliczeniach. |
Nie. | ApplicationInsights | Umożliwia dodawanie obsługi telemetrycznej usługi aplikacja systemu Azure Insights do kontenera. |
Tak | Rozliczenia | Określa identyfikator URI punktu końcowego zasobu usługi na platformie Azure. |
Tak | EULA | Wskazuje, że zaakceptowano umowę licencyjną użytkownika końcowego (EULA) dla kontenera. |
Nie. | Biegle | Zapisuje dziennik i, opcjonalnie, dane metryk na serwerze Fluentd. |
Nie. | HTTP Proxy | Konfiguruje serwer proxy HTTP do tworzenia żądań wychodzących. |
Nie. | Rejestrowanie | Zapewnia obsługę rejestrowania ASP.NET Core dla kontenera. |
Tak | Wierzchowce | Odczytuje i zapisuje dane z komputera hosta do kontenera i z kontenera z powrotem do komputera hosta. |
Ważne
Ustawienia ApiKey, Billing i EULA są używane razem i należy podać prawidłowe wartości dla wszystkich trzech z nich. W przeciwnym razie kontener nie zostanie uruchomiony. Aby uzyskać więcej informacji na temat używania tych ustawień konfiguracji do utworzenia wystąpienia kontenera.
Ustawienie konfiguracji apiKey
Ustawienie ApiKey
określa klucz zasobu platformy Azure używany do śledzenia informacji rozliczeniowych dla kontenera. Musisz określić wartość elementu ApiKey, a wartość musi być prawidłowym kluczem dla zasobu usługi Translator określonego Billing
dla ustawienia konfiguracji.
To ustawienie można znaleźć w następującym miejscu:
- Witryna Azure Portal: zarządzanie zasobami w usłudze Translator w obszarze Klucze
Ustawienie applicationInsights
Ustawienie ApplicationInsights
umożliwia dodanie obsługi telemetrii usługi aplikacja systemu Azure Insights do kontenera. Usługa Application Insights zapewnia szczegółowe monitorowanie kontenera. Kontener można łatwo monitorować pod kątem dostępności, wydajności i użycia. Możesz również szybko identyfikować i diagnozować błędy w kontenerze.
W poniższej tabeli opisano ustawienia konfiguracji obsługiwane w ApplicationInsights
sekcji .
Wymagania | Nazwisko | Typ danych | opis |
---|---|---|---|
Nie. | InstrumentationKey |
String | Klucz instrumentacji wystąpienia usługi Application Insights, do którego są wysyłane dane telemetryczne dla kontenera. Aby uzyskać więcej informacji, zobacz Application Insights for ASP.NET Core. Przykład: InstrumentationKey=123456789 |
Ustawienie konfiguracji rozliczeń
Ustawienie Billing
określa identyfikator URI punktu końcowego zasobu usługi Translator na platformie Azure używany do pomiaru informacji rozliczeniowych dla kontenera. Musisz określić wartość dla tego ustawienia konfiguracji, a wartość musi być prawidłowym identyfikatorem URI punktu końcowego dla zasobu usługi Translator na platformie Azure. Kontener raportuje użycie co około 10 do 15 minut.
To ustawienie można znaleźć w następującym miejscu:
- Witryna Azure Portal: strona Przegląd usługi Translator oznaczona etykietą
Endpoint
Wymagania | Nazwisko | Typ danych | opis |
---|---|---|---|
Tak | Billing |
String | Identyfikator URI punktu końcowego rozliczeń. Aby uzyskać więcej informacji na temat uzyskiwania identyfikatora URI rozliczeń, zobacz zbieranie wymaganych parametrów. Aby uzyskać więcej informacji i pełną listę regionalnych punktów końcowych, zobacz Niestandardowe nazwy poddomeny dla usług Azure AI. |
Ustawienie umowy EULA
Ustawienie Eula
wskazuje, że zaakceptowano licencję dla kontenera. Musisz określić wartość dla tego ustawienia konfiguracji, a wartość musi być ustawiona na accept
wartość .
Wymagania | Nazwisko | Typ danych | opis |
---|---|---|---|
Tak | Eula |
String | Akceptacja licencji Przykład: Eula=accept |
Kontenery usług AI platformy Azure są licencjonowane zgodnie z umową regulującą korzystanie z platformy Azure. Jeśli nie masz istniejącej umowy dotyczącej korzystania z platformy Azure, zgadzasz się, że Umowa rządząca korzystaniem z platformy Azure jest umową subskrypcji online firmy Microsoft, która obejmuje postanowienia dotyczące usług online. W przypadku wersji zapoznawczych zgadzasz się również na dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure. Korzystając z kontenera, akceptujesz te warunki.
Ustawienia fluentd
Fluentd to moduł zbierający dane typu open source do ujednoliconego rejestrowania. Ustawienia Fluentd
zarządzają połączeniem kontenera z serwerem Fluentd . Kontener zawiera dostawcę rejestrowania Fluentd, który umożliwia kontenerowi zapisywanie dzienników i opcjonalnie danych metryk na serwerze Fluentd.
W poniższej tabeli opisano ustawienia konfiguracji obsługiwane w Fluentd
sekcji .
Nazwisko | Typ danych | opis |
---|---|---|
Host |
String | Adres IP lub nazwa hosta DNS serwera Fluentd. |
Port |
Integer | Port serwera Fluentd. Wartość domyślna to 24224. |
HeartbeatMs |
Integer | Interwał pulsu w milisekundach. Jeśli żaden ruch zdarzeń nie został wysłany przed wygaśnięciem tego interwału, puls jest wysyłany do serwera Fluentd. Wartość domyślna to 60000 milisekund (1 minuta). |
SendBufferSize |
Integer | Miejsce buforu sieci w bajtach przydzielone do operacji wysyłania. Wartość domyślna to 32768 bajtów (32 kilobajty). |
TlsConnectionEstablishmentTimeoutMs |
Integer | Limit czasu ( w milisekundach) w celu nawiązania połączenia SSL/TLS z serwerem Fluentd. Wartość domyślna to 10000 milisekund (10 sekund). Jeśli UseTLS ustawiono wartość false, ta wartość jest ignorowana. |
UseTLS |
Wartość logiczna | Wskazuje, czy kontener powinien używać protokołu SSL/TLS do komunikacji z serwerem Fluentd. Wartość domyślna to false. |
Ustawienia poświadczeń serwera proxy HTTP/HTTPS
Jeśli musisz skonfigurować serwer proxy HTTP do tworzenia żądań wychodzących, użyj następujących dwóch argumentów:
Nazwisko | Typ danych | opis |
---|---|---|
HTTPS_PROXY | string | Adres URL serwera proxy, na przykład https://proxy:8888 |
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> \
HTTPS_PROXY=<proxy-url>
Ustawienia rejestrowania
Kontenery usługi Translator obsługują następujących dostawców rejestrowania:
Dostawca | Purpose |
---|---|
Konsola | Dostawca rejestrowania ASP.NET Core Console . Obsługiwane są wszystkie ustawienia konfiguracji ASP.NET Core i wartości domyślne dla tego dostawcy rejestrowania. |
Debug | Dostawca rejestrowania ASP.NET Core Debug . Obsługiwane są wszystkie ustawienia konfiguracji ASP.NET Core i wartości domyślne dla tego dostawcy rejestrowania. |
Disk | Dostawca rejestrowania JSON. Ten dostawca rejestrowania zapisuje dane dziennika w instalacji wyjściowej. |
Ustawienia
Logging
zarządzają obsługą rejestrowania ASP.NET Core dla kontenera. Możesz użyć tych samych ustawień konfiguracji i wartości dla kontenera, który jest używany dla aplikacji ASP.NET Core.Parametr
Logging.LogLevel
określa minimalny poziom rejestrowania. WażnośćLogLevel
zakresów od 0 do 6. Po określeniuLogLevel
elementu rejestrowanie jest włączone dla komunikatów na określonym poziomie i wyższym: Trace = 0, Debug = 1, Information = 2, Warning = 3, Error = 4, Critical = 5, None = 6.Obecnie kontenery usługi Translator mogą ograniczać dzienniki w poziomie LogLevel lub nowszym.
Ogólna składnia poleceń rejestrowania jest następująca:
-Logging:LogLevel:{Provider}={FilterSpecs}
Następujące polecenie uruchamia kontener platformy Docker z ustawionym ustawieniem Ostrzeżenie i dostawca rejestrowania ustawiony na Konsolę. LogLevel
To polecenie wyświetla nietypowe lub nieoczekiwane zdarzenia podczas przepływu aplikacji do konsoli:
docker run --rm -it -p 5000:5000
-v /mnt/d/TranslatorContainer:/usr/local/models \
-e apikey={API_KEY} \
-e eula=accept \
-e billing={ENDPOINT_URI} \
-e Languages=en,fr,es,ar,ru \
-e Logging:LogLevel:Console="Warning"
mcr.microsoft.com/azure-cognitive-services/translator/text-translation:latest
Rejestrowanie dysku
Dostawca rejestrowania Disk
obsługuje następujące ustawienia konfiguracji:
Nazwisko | Typ danych | opis |
---|---|---|
Format |
String | Format danych wyjściowych dla plików dziennika. Uwaga: ta wartość musi być ustawiona na wartość , aby json włączyć dostawcę rejestrowania. Jeśli ta wartość jest określona bez określania również instalacji wyjściowej podczas tworzenia wystąpienia kontenera, wystąpi błąd. |
MaxFileSize |
Integer | Maksymalny rozmiar w megabajtach (MB) pliku dziennika. Gdy rozmiar bieżącego pliku dziennika spełnia lub przekracza tę wartość, dostawca rejestrowania uruchamia nowy plik dziennika. Jeśli określono -1, rozmiar pliku dziennika jest ograniczony tylko przez maksymalny rozmiar pliku, jeśli istnieje, dla instalacji wyjściowej. Domyślna wartość wynosi 1. |
Przykład dostawcy dysków
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type-bind,src=/home/azureuser/output,target=/output \
-e apikey={API_KEY} \
-e eula=accept \
-e billing={ENDPOINT_URI} \
-e Languages=en,fr,es,ar,ru \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output
Aby uzyskać więcej informacji na temat konfigurowania obsługi rejestrowania ASP.NET Core, zobacz Konfiguracja pliku ustawień.
Ustawienia instalacji
Użyj instalacji powiązania, aby odczytywać i zapisywać dane z i z kontenera. Możesz określić instalację wejściową lub instalację wyjściową, określając --mount
opcję w poleceniu docker run .