Rövid útmutató: A Java Spring Boot alkalmazás tárolórendszerképeinek létrehozása és leküldése az Azure Container Registrybe

Ezzel a rövid útmutatóval tárolólemezképeket hozhat létre a Java Spring Boot-alkalmazásról, és leküldheti az Azure Container Registrybe a Maven és a Jib használatával. A Maven és a Jib a fejlesztői eszközök egyik módja az Azure-tárolóregisztrációs adatbázissal való interakcióhoz.

Előfeltételek

Spring Boot-alkalmazás létrehozása és építése Dockerben

Az alábbi lépések végigvezetik egy tárolóalapú Java Spring Boot-webalkalmazás létrehozásán és helyi tesztelésén.

  1. A parancssorból a következő paranccsal klónozza a Spring Boott a Docker Első lépések mintaprojektjén.

    git clone https://github.com/spring-guides/gs-spring-boot-docker.git
    
  2. Módosítsa a könyvtárat a teljes projektre.

    cd gs-spring-boot-docker/complete
    
  3. Használja a Mavent a mintaalkalmazás összeállításához és futtatásához.

    mvn package spring-boot:run
    
  4. Tesztelje a webalkalmazást. Ehhez lépjen a http://localhost:8080 címre, vagy a használja a curl parancsot:

    curl http://localhost:8080
    

A következő üzenet jelenik meg: Hello Docker World

Azure Container Registry létrehozása az Azure CLI-vel

Ezután az alábbi lépések végrehajtásával létre fog hozni egy Azure-erőforráscsoportot és az ACR-t:

  1. Jelentkezzen be az Azure-fiókjába az alábbi paranccsal:

    az login
    
  2. Adja meg a használni kívánt Azure-előfizetést:

    az account set -s <subscription ID>
    
  3. Hozzon létre egy erőforráscsoportot az oktatóanyagban használt Azure-erőforrások számára. Az alábbi parancsban mindenképpen cserélje le a helyőrzőket a saját erőforrásnevére és egy olyan helyre, mint például eastus.

    az group create \
        --name=<your resource group name> \
        --location=<location>
    
  4. Hozzon létre egy privát Azure-tárolóregisztrációs adatbázist az erőforráscsoportban az alábbi paranccsal. Ügyeljen arra, hogy a helyőrzőket tényleges értékekkel cserélje le. Az oktatóanyag a mintaalkalmazást Docker-lemezképként küldi le ennek a regisztrációs adatbázisnak a későbbi lépésekben.

    az acr create \
        --resource-group <your resource group name> \
        --location <location> \
        --name <your registry name> \
        --sku Basic
    

Az alkalmazás feltöltése a konténer regisztrációs adatbázisba a Jib segítségével.

Végül frissítenie kell a projektkonfigurációt, és a parancssor használatával elkészítheti és üzembe helyezheti a rendszerképet.

Feljegyzés

Az imént létrehozott Azure-tárolóregisztrációs adatbázisba való bejelentkezéshez futtatnia kell a Docker-démont. A Docker gépre való telepítéséhez itt találja a Docker hivatalos dokumentációját.

  1. Jelentkezzen be az Azure Container Registrybe az Azure CLI-ből az alábbi paranccsal. Mindenképpen cserélje le a helyőrzőt a saját rendszerleíró névre.

    az config set defaults.acr=<your registry name>
    az acr login
    

    A az config parancs beállítja az alapértelmezett beállításjegyzék nevét a az acr parancsokkal való használathoz.

  2. Lépjen a Spring Boot-alkalmazás befejezett projektkönyvtárába (például „C:\SpringBoot\gs-spring-boot-docker\complete” vagy „/users/robert/SpringBoot/gs-spring-boot-docker/complete”), és nyissa meg a pom.xml fájlt egy szövegszerkesztővel.

  3. Frissítse a gyűjteményt <properties> a pom.xml fájlban az alábbi XML-fájllal. Cserélje le a helyőrzőt a beállításjegyzék nevére, és adjon hozzá egy <jib-maven-plugin.version> tulajdonságot értékkel 2.2.0, vagy a jib-maven-plugin újabb verzióját.

    <properties>
       <docker.image.prefix><your registry name>.azurecr.io</docker.image.prefix>
       <java.version>1.8</java.version>
       <jib-maven-plugin.version>2.2.0</jib-maven-plugin.version>
    </properties>
    
  4. Frissítse a <plugins> gyűjteményt a pom.xml fájlban úgy, hogy az <plugin> elem tartalmazza a(z) jib-maven-plugin egy bejegyzését, ahogy a következő példában látható. Vegye figyelembe, hogy a Microsoft Container Registry (MCR) egy alaprendszerképét használjuk: mcr.microsoft.com/openjdk/jdk:11-ubuntu. Ez tartalmaz egy hivatalosan támogatott JDK-t az Azure-hoz. A hivatalosan támogatott JDK-kkal rendelkező többi MCR-alaprendszerképről lásd : Az OpenJDK Microsoft buildjének telepítése.

    <plugin>
      <artifactId>jib-maven-plugin</artifactId>
      <groupId>com.google.cloud.tools</groupId>
      <version>${jib-maven-plugin.version}</version>
      <configuration>
         <from>
             <image>mcr.microsoft.com/openjdk/jdk:11-ubuntu</image>
         </from>
         <to>
             <image>${docker.image.prefix}/${project.artifactId}</image>
         </to>
      </configuration>
    </plugin>
    
  5. Lépjen a Spring Boot-alkalmazás teljes projektkönyvtárára, és futtassa a következő parancsot a rendszerkép létrehozásához és a lemezkép beállításjegyzékbe való leküldéséhez:

    az acr login && mvn compile jib:build
    

Feljegyzés

Biztonsági okokból a létrehozott az acr login hitelesítő adatok csak 1 óráig érvényesek. Ha 401 Nem engedélyezett hibaüzenetet kap, újra futtathatja a parancsot az az acr login -n <your registry name> újrahitelesítéshez.

Ellenőrizze a konténerképet

Gratulálunk! Végül a konténerizált Java alkalmazása az Azure által támogatott JDK-n épülve, feltöltésre került az ACR-be. Most már tesztelheti a rendszerképet úgy, hogy üzembe helyezi Azure-alkalmazás Szolgáltatásban, vagy a helyire húzza a parancsot (a helyőrző lecserélésével):

docker pull <your registry name>.azurecr.io/gs-spring-boot-docker

Következő lépések

A Hivatalos Microsoft által támogatott Java-alaplemezképek egyéb verzióit lásd:

Ha szeretne többet megtudni a Spring és az Azure szolgáltatásról, lépjen tovább a Spring on Azure dokumentációs központra.

További források

További információt a következő források tartalmaznak: