Tárolók létrehozása újbóli felhasználáshoz
Ezekkel a tárolóreceptekkel olyan Azure AI-tárolókat hozhat létre, amelyek újra felhasználhatók. A tárolók felépíthetők néhány vagy az összes konfigurációs beállítással, hogy a tároló indításakor ne legyen rájuk szükség.
Miután létrehozta ezt az új tárolóréteget (a beállításokkal együtt), és helyileg tesztelte, a tárolót tárolóregisztrációs adatbázisban tárolhatja. A tároló indításakor csak a tárolóban jelenleg nem tárolt beállításokra lesz szüksége. A privát beállításjegyzék-tároló konfigurációs helyet biztosít a beállítások átadásához.
A docker run
dokumentumban szereplő példák feltételezik, hogy a Windows-konzol vonal-folytatási ^
karakterrel rendelkezik. Saját használatra vegye figyelembe a következőket:
- Ne módosítsa az argumentumok sorrendjét, hacsak nem ismeri a Docker-tárolókat.
- Ha a Windowstól eltérő operációs rendszert vagy a Windows konzoltól eltérő konzolt használ, használja a megfelelő konzolt/terminált, a csatlakoztatások mappaszintaxisát és a konzol és a rendszer vonal folytatási karakterét. Mivel az Azure AI-szolgáltatások tárolója Linux operációs rendszer, a cél csatlakoztatása Linux-stílusú mappaszintaxist használ.
docker run
a windowsos engedélyek ütközésének elkerülése érdekében például ac:
meghajtón kívüli könyvtárat használja. Ha egy adott könyvtárat kell használnia bemeneti könyvtárként, előfordulhat, hogy engedélyt kell adnia a Docker szolgáltatásnak.
Az egyes szolgáltatások példaparancsai docker run
nem tárolnak konfigurációs beállításokat a tárolóban. Amikor egy konzolról vagy beállításjegyzék-szolgáltatásból indítja el a tárolót, ezeknek a konfigurációs beállításoknak be kell adniuk. A privát beállításjegyzék-tároló konfigurációs helyet biztosít a beállítások átadásához.
Az összes konfigurációs beállítás tárolásához hozzon létre egy Dockerfile
ilyen beállítást.
Ezzel a megközelítéssel kapcsolatos problémák:
- Az új tárolónak külön neve és címkéje van az eredeti tárolótól.
- A beállítások módosításához módosítania kell a Dockerfile értékeit, újra kell építenie a lemezképet, és újra közzé kell tennie a beállításjegyzékben.
- Ha valaki hozzáfér a tárolóregisztrációs adatbázishoz vagy a helyi gazdagéphez, futtathatja a tárolót, és használhatja az Azure AI-szolgáltatások végpontjait.
- Ha a használt Azure AI-szolgáltatás nem igényel bemeneti csatlakoztatást, ne adja hozzá a sorokat a
COPY
Dockerfile-hoz.
Hozza létre a Dockerfile-t, húzza le a használni kívánt Meglévő Azure AI-szolgáltatások tárolójából, majd a Dockerfile docker-parancsaival állítsa be vagy kérje le a tároló számára szükséges információkat.
Ez a példa:
- Beállítja a számlázási végpontot
{BILLING_ENDPOINT}
a gazdagép környezeti kulcsából a következő használatávalENV
: . - Beállítja a számlázási API-kulcsot
{ENDPOINT_KEY}
a gazdagép környezeti kulcsából az "ENV" használatával.
Ez a példa bemutatja, hogyan hozhatja létre a Language service hangulattárolóját egy Dockerfile-ból.
FROM mcr.microsoft.com/azure-cognitive-services/sentiment:latest
ENV billing={BILLING_ENDPOINT}
ENV apikey={ENDPOINT_KEY}
ENV EULA=accept
A tárolót szükség szerint helyileg vagy a privát beállításjegyzék-tárolóból hozhatja létre és futtathatja.
Ez a példa bemutatja, hogyan használható a Language Understanding, hogyan mentheti a számlázást és a modelleket a Dockerfile-ból.
- Másolja a Language Understanding (LUIS) modellfájlt a gazdagép fájlrendszeréből a használatával
COPY
. - A LUIS-tároló több modellt is támogat. Ha az összes modell ugyanabban a mappában van tárolva, mindegyiknek egy
COPY
utasításra van szüksége. - Futtassa a docker-fájlt a modell bemeneti könyvtárának relatív szülőjéből. Az alábbi példában futtassa a
docker build
parancsokatdocker run
a relatív szülőtől/input
. A parancs első/input
COPY
része a gazdaszámítógép könyvtára. A második/input
a tároló könyvtára.
FROM <container-registry>/<cognitive-service-container-name>:<tag>
ENV billing={BILLING_ENDPOINT}
ENV apikey={ENDPOINT_KEY}
ENV EULA=accept
COPY /input /input
A tárolót szükség szerint helyileg vagy a privát beállításjegyzék-tárolóból hozhatja létre és futtathatja.
A Docker-fájl létrehozásához cserélje le <your-image-name>
a kép új nevére, majd használja a következőt:
docker build -t <your-image-name> .
A rendszerkép futtatásához és eltávolításához, amikor a tároló leáll (--rm
):
docker run --rm <your-image-name>
Kövesse az alábbi lépéseket a Dockerfile használatához, és helyezze el az új lemezképet a privát tárolóregisztrációs adatbázisban.
Hozzon létre egy
Dockerfile
szöveget az újrafelhasználási receptből. ADockerfile
fájlnak nincs bővítménye.Cserélje le a szögletes zárójelek értékeit a saját értékeire.
Hozza létre a fájlt egy rendszerképbe a parancssorban vagy a terminálban az alábbi paranccsal. Cserélje le a szögletes zárójelek
<>
értékeit a saját tárolónevére és címkéjére.A címkebeállítással
-t
információkat adhat meg arról, hogy mit módosított a tárolóhoz. A tároló nevemodified-LUIS
például azt jelzi, hogy az eredeti tároló rétegzett. A címke nevewith-billing-and-model
azt jelzi, hogy a Language Understanding (LUIS) tároló hogyan lett módosítva.docker build -t <your-new-container-name>:<your-new-tag-name> .
Jelentkezzen be az Azure CLI-be egy konzolról. Ez a parancs megnyitja a böngészőt, és hitelesítést igényel. A hitelesítés után bezárhatja a böngészőt, és folytathatja a munkát a konzolon.
az login
Jelentkezzen be a privát beállításjegyzékbe az Azure CLI-vel egy konzolról.
Cserélje le a szögletes zárójelek
<my-registry>
értékeit a saját beállításjegyzék-nevére.az acr login --name <my-registry>
Docker-bejelentkezéssel is bejelentkezhet, ha szolgáltatásnévhez van rendelve.
docker login <my-registry>.azurecr.io
Címkézze fel a tárolót a magánregisztrációs adatbázis helyével. Cserélje le a szögletes zárójelek
<my-registry>
értékeit a saját beállításjegyzék-nevére.docker tag <your-new-container-name>:<your-new-tag-name> <my-registry>.azurecr.io/<your-new-container-name-in-registry>:<your-new-tag-name>
Ha nem használ címkenevet,
latest
a rendszer feltételezi.Az új lemezkép leküldése a privát tárolóregisztrációs adatbázisba. A privát tárolóregisztrációs adatbázis megtekintésekor a következő CLI-parancsban használt tárolónév lesz az adattár neve.
docker push <my-registry>.azurecr.io/<your-new-container-name-in-registry>:<your-new-tag-name>