Rövid útmutató: Tárolópéldány üzembe helyezése az Azure-ban a Docker parancssori felületével
Az Azure Container Instances segítségével egyszerűen és gyorsan futtathat kiszolgáló nélküli Docker-tárolókat az Azure-ban. Üzembe helyezés igény szerint egy tárolópéldányon a natív felhőbeli alkalmazások fejlesztésekor, és zökkenőmentesen szeretne váltani a helyi fejlesztésről a felhőbeli üzembe helyezésre.
Ebben a rövid útmutatóban natív Docker CLI-parancsokkal helyezhet üzembe egy Docker-tárolót, és elérhetővé teheti az alkalmazását az Azure Container Instancesben. A Docker és az Azure integrációja lehetővé teszi ezt a képességet. Néhány másodperccel a docker run
parancs végrehajtása után megkeresheti a tárolóban futó alkalmazást:
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Ehhez a rövid útmutatóhoz a Docker Desktop 2.3.0.5-ös vagy újabb verziójára van szüksége, amely Windows vagy macOS rendszeren érhető el. Vagy telepítse a Docker ACI Integration CLI-t Linuxhoz.
Fontos
Az Azure Container Instances nem minden funkciója támogatott. Küldjön visszajelzést a Docker-Azure integrációról az aci-integration-béta GitHub-adattárban található probléma létrehozásával.
Azure-környezet létrehozása
Ha Docker-parancsokkal szeretne tárolókat futtatni az Azure Container Instancesben, először jelentkezzen be az Azure-ba:
docker login azure --tenant-id "[tenant ID]"
A bérlőazonosító megkereséséhez keresse meg a Microsoft Entra-azonosító tulajdonságait.
Amikor a rendszer kéri, adja meg vagy válassza ki az Azure-ra vonatkozó hitelesítő adatait.
ACI-környezet létrehozása a futtatással docker context create aci
. Ez a környezet társítja a Dockert egy Azure-előfizetéshez és erőforráscsoporthoz, így tárolópéldányokat hozhat létre és kezelhet. Például egy myacicontext nevű környezet létrehozásához:
docker context create aci myacicontext
Amikor a rendszer kéri, válassza ki az Azure-előfizetés azonosítóját, majd válasszon ki egy meglévő erőforráscsoportot, vagy hozzon létre egy új erőforráscsoportot. Ha új erőforráscsoportot választ, annak a létrehozásakor rendszer által generált névvel rendelkezik. Az Azure Container Instancest – mint minden Azure-erőforrást – egy erőforráscsoportban kell üzembe helyezni. Az erőforráscsoportok lehetővé teszik az egymáshoz kapcsolódó Azure-erőforrások rendszerezését és kezelését.
Futtassa docker context ls
annak megerősítését, hogy hozzáadta az ACI-környezetet a Docker-környezetekhez:
docker context ls
Tároló létrehozása
A Docker-környezet létrehozása után létrehozhat egy tárolót az Azure-ban. Ebben a rövid útmutatóban a nyilvános mcr.microsoft.com/azuredocs/aci-helloworld
rendszerképet fogja használni. Ez a kép egy Node.js írt kis webalkalmazást tartalmaz, amely statikus HTML-oldalt szolgál ki.
Először váltson az ACI-környezetre. Ebben a környezetben minden további Docker-parancs fut.
docker context use myacicontext
Futtassa a következő docker run
parancsot az Azure-tárolópéldány létrehozásához az interneten elérhető 80-os porttal:
docker run -p 80:80 mcr.microsoft.com/azuredocs/aci-helloworld
Mintakimenet egy sikeres üzembe helyezéshez:
[+] Running 2/2
⠿ hungry-kirch Created 5.1s
⠿ single--container--aci Done 11.3s
hungry-kirch
Futtassa docker ps
a futó tároló adatait, beleértve a nyilvános IP-címet is:
docker ps
A mintakimenet egy nyilvános IP-címet jelenít meg, ebben az esetben az 52.230.225.232-et:
CONTAINER ID IMAGE COMMAND STATUS PORTS
hungry-kirch mcr.microsoft.com/azuredocs/aci-helloworld Running 52.230.225.232:80->80/tcp
Most nyissa meg az IP-címet a böngészőben. Ha egy, az alábbihoz hasonló weboldal jelenik meg, gratulálunk! Sikeresen üzembe helyezett egy Docker-tárolóban futó alkalmazást az Azure-ban.
A tároló naplóinak lekérése
Amikor hibaelhárítást kell végrehajtania egy tárolón, vagy az abban futtatott alkalmazáson (vagy csak meg kell néznie a kimenetet), először tekintse meg a tárolópéldány naplóit.
Futtassa például a docker logs
parancsot a hungry-kirch tároló naplóinak megtekintéséhez az ACI-környezetben:
docker logs hungry-kirch
A kimenet megjeleníti a tároló naplóit, és a HTTP GET kéréseknek is meg kell jelenniük, amelyek akkor jöttek létre, amikor az alkalmazást a böngészőjében megtekintette.
listening on port 80
::ffff:10.240.255.55 - - [07/Jul/2020:17:43:53 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [07/Jul/2020:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [07/Jul/2020:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
Az erőforrások eltávolítása
Ha végzett a tárolóval, futtassa docker rm
a tároló eltávolításához. Ez a parancs leállítja és törli az Azure-tárolópéldányt.
docker rm hungry-kirch
Következő lépések
Ebben a rövid útmutatóban létrehozott egy Azure-tárolópéldányt egy nyilvános rendszerképből a Docker és az Azure integrációjával. További információ az integrációs forgatókönyvekről a Docker dokumentációjában.
A Visual Studio Code Docker-bővítményét is használhatja integrált felhasználói élményhez tárolók, képek és környezetek fejlesztéséhez, futtatásához és kezeléséhez.
Ha azure-eszközöket szeretne használni a tárolópéldányok létrehozásához és kezeléséhez, tekintse meg az Azure CLI, az Azure PowerShell, az Azure Portal és az Azure Resource Manager-sablont használó további rövid útmutatókat.
Ha a Docker Compose használatával szeretne helyileg definiálni és futtatni egy többtárolós alkalmazást, majd az Azure Container Instancesre váltani, folytassa az oktatóanyagot.