Spring Boot-alkalmazás üzembe helyezése Linuxon az Azure App Service-ben

Ez az oktatóanyag bemutatja, hogyan tárolózhatja a Spring Boot-alkalmazást a Dockerrel, és hogyan helyezhet üzembe saját Docker-rendszerképet egy Linux-gazdagépen a Azure App Service.

Előfeltételek

Az oktatóanyag lépéseinek elvégzéséhez a következő előfeltételekre van szüksége:

Jegyzet

Az oktatóanyag virtualizálási követelményei miatt nem tudja követni a jelen cikkben szereplő lépéseket egy virtuális gépen. Olyan fizikai számítógépet kell használnia, amelyen engedélyezve van a virtualizálási funkció.

A Spring Boot létrehozása a Docker Első lépések webalkalmazásban

Az alábbi lépések végigvezetik az egyszerű Spring Boot-webalkalmazás létrehozásához és helyi teszteléséhez szükséges lépéseken.

  1. Nyisson meg egy parancssort, és hozzon létre egy helyi könyvtárat az alkalmazás tárolásához, és váltson erre a könyvtárra; például:

    mkdir SpringBoot
    cd SpringBoot
    
  2. Klónozza a Spring Boot kezdőknek Docker-rel mintaprojektet a létrehozott könyvtárba; például:

    git clone https://github.com/spring-guides/gs-spring-boot-docker.git
    
  3. Módosítsa a könyvtárat a befejezett projektre; például:

    cd gs-spring-boot-docker/complete
    
  4. A JAR-fájl létrehozása a Maven használatával; például:

    mvn package
    
  5. A webalkalmazás létrehozása után módosítsa a könyvtárat arra a target könyvtárra, amelyben a JAR-fájl található, és indítsa el a webalkalmazást, például:

    cd target
    java -jar spring-boot-docker-complete-0.0.1-SNAPSHOT.jar --server.port=80
    
  6. Tesztelje a webalkalmazást úgy, hogy helyileg böngész egy webböngésző használatával. Ha például elérhető a curl, és úgy konfigurálta a Tomcat-kiszolgálót, hogy a 80-ás porton fusson:

    curl http://localhost
    
  7. A következő üzenet jelenik meg: Hello Docker World

    Mintaalkalmazás tallózása helyileg

Privát Docker-beállításjegyzékként használható Azure Container Registry létrehozása

Az alábbi lépések végigvezetik az Azure Portal használatával egy Azure Container Registry létrehozására.

Jegyzet

Ha az Azure Portal helyett az Azure CLI-t szeretné használni, kövesse a Privát Docker-tárolóregisztrációs adatbázis létrehozása az Azure CLI 2.0használatával című szakasz lépéseit.

  1. Keresse meg az Azure Portal , és jelentkezzen be.

    Miután bejelentkezett a fiókjába a Azure portálon, kövesse a Privát Docker-tárolóregisztrációs adatbázis létrehozása című cikk lépéseit a Azure portál cikkével. Az alábbi lépések ezeket az utasításokat a célszerűség kedvéért parafrastruktívák.

  2. Válassza az Új menüikont, válassza a Tárolók lehetőséget, majd a Azure Container Registry lehetőséget.

    Új Azure Container Registry- létrehozása

  3. Amikor megjelenik a Tárolóregisztrációs adatbázis létrehozása lap, adja meg a beállításjegyzék nevét, előfizetését, erőforráscsoportját és helyét. Ezután válassza létrehozása lehetőséget.

    Az Azure Container Registry beállításainak konfigurálása

  4. Válassza a Hozzáférési kulcsok lehetőséget a Beállítások területen, és kapcsolja be az Engedélyezett kapcsolót a rendszergazdai felhasználó számára.

    Rendszergazdai felhasználói felület engedélyezése az Azure Portalon

A Maven konfigurálása az Azure Container Registry rendszerképének létrehozására

  1. Nyissa meg a Spring Boot-alkalmazás befejezett projektkönyvtárát – 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.

  2. Frissítse a gyűjteményt a <properties>pom.xmlfájlban a legújabb verzióvaljib-maven-plugin, a bejelentkezési kiszolgáló értékével és a Azure Container Registry hozzáférési beállításaival az oktatóanyag előző szakaszából. Például:

    <properties>
       <jib-maven-plugin.version>3.2.0</jib-maven-plugin.version>
       <docker.image.prefix>wingtiptoysregistry.azurecr.io</docker.image.prefix>
       <java.version>1.8</java.version>
    </properties>
    
  3. Adja hozzá jib-maven-plugin a <plugins> gyűjteményhez apom.xml fájlban. Ez a példa a 3.2.0-s verziót használja.

    Adja meg az alaprendszerképet a <from>/<image>, itt mcr.microsoft.com/openjdk/jdk:11-ubuntu. Adja meg az alapból létrehozandó végső rendszerkép nevét a következőben <to>/<image>: .

    A hitelesítés {docker.image.prefix} a bejelentkezési kiszolgáló a regisztrációs lapon, amely korábban látható. A {project.artifactId} a projekt első Maven-buildjének JAR-fájljának neve és verziószáma.

    <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>
    
  4. Navigáljon a Spring Boot-alkalmazás elkészült projektkönyvtárába, majd futtassa a következő parancsot az alkalmazás újraépítéséhez és a tároló Azure Container Registrybe való feltöltéséhez:

    az acr login --name wingtiptoysregistry && mvn compile jib:build
    

Jegyzet

A parancs az acr login ... megpróbál bejelentkezni Azure Container Registry. Ellenkező esetben meg kell adnia a(z) <password> és <username> elemet a(z) jib-maven-plugin számára. További információkért lásd: Hitelesítési módszerek a jibben.

Ha a Jib használatával tölti fel a rendszerképet az Azure Container Registrybe, a rendszerkép nem használ Dockerfile-t. További információt ebben a cikkben talál.

Webalkalmazás létrehozása Linux rendszeren az Azure App Service-ben a saját konténerképével

  1. Keresse meg az Azure Portal , és jelentkezzen be.

  2. Válassza az Erőforrás létrehozása menüikont, válassza a Számítás, majd a Web App lehetőséget.

    Új webalkalmazás létrehozása az Azure Portalon

  3. Amikor megjelenik a Web App on Linux lap, adja meg a következő információkat:

    • Válassza ki előfizetését a legördülő listából.

    • Válasszon ki egy meglévő erőforráscsoportot, vagy adjon meg egy nevet egy új erőforráscsoport létrehozásához.

    • Adja meg az alkalmazásnév egyedi nevét; például: wingtiptoyslinux.

    • Adja meg a Docker Container-tól -ig közzétételi.

    • Az Operációs rendszer mezőben válassza a Linuxlehetőséget.

    • Válassza Régiólehetőséget.

    • Fogadja el a Linux-csomagot, és válasszon egy már meglévő App Service-csomagot, vagy válassza az Új létrehozása lehetőséget, hogy új App Service-csomagot hozzon létre.

    • Válassza a Tovább: Docker lehetőséget.

    Folytatáshoz kattintson a Tovább: Docker gombra.

    A Web App lapon válassza Dockerlehetőséget, és adja meg a következő adatokat:

    • Válassza az egytárolóslehetőséget.

    • Nyilvántartás-: Válassza ki a tárolót, például a következőt: wingtiptoysregistry.

    • Kép: Válassza ki a korábban létrehozott képet, például: spring-boot-docker.

    • Címke: Válassza ki a kép címkéjét, például: legújabb.

    • Indítási parancs: Tartsa üresen, mivel a rendszerkép már rendelkezik az indítási paranccsal.

    Miután megadta az összes fenti információt, válassza a Véleményezés + létrehozás lehetőséget.

    Befejezés a Véleményezés + Létrehozás gombra kattintva.

    • Válassza Véleményezés + létrehozáslehetőséget.

Tekintse át az információkat, és válassza létrehozása lehetőséget.

Az üzembe helyezés befejezése után válassza az Erőforrás megnyitása elemet. Az üzembe helyezési oldal megjeleníti az alkalmazás eléréséhez szükséges URL-címet.

Üzembe helyezési URL-címének lekérése

Jegyzet

Azure automatikusan leképozza az internetes kéréseket a beágyazott Tomcat-kiszolgálóra, amely a 80-es porton fut. Ha azonban úgy konfigurálja a beágyazott Tomcat-kiszolgálót, hogy a 8080-s porton vagy egy egyéni porton fusson, hozzá kell adnia egy környezeti változót a webalkalmazáshoz, amely meghatározza a beágyazott Tomcat-kiszolgáló portját. A környezeti változó hozzáadásához kövesse az alábbi lépéseket:

  1. Keresse meg az Azure Portal , és jelentkezzen be.

  2. Válassza Web Appsikonját, és válassza ki az alkalmazást az App Services lapon.

  3. Válassza Konfigurációs lehetőséget a bal oldali navigációs panelen.

  4. Az Alkalmazásbeállítások szakaszban adjon hozzá egy új, WEBSITES_PORT nevű beállítást, és adja meg az érték egyéni portszámát.

  5. Válassza OKlehetőséget. Ezután válassza a Mentéslehetőséget.

Egyéni portszám mentése az Azure Portalon

Erőforrások törlése

Ha már nincs szüksége az erőforrásokra, azok törléséhez használja a(z) Azure Portal felületet. Az erőforrások törlése segít elkerülni a váratlan díjakat.

Következő lépések

Ha többet szeretne megtudni a Springről és az Azure-ról, lépjen tovább a Spring on Azure dokumentációs központjába.

Lásd még:

A Spring Boot-alkalmazások Azure-beli használatáról az alábbi cikkekben talál további információt:

Az Azure Javával való használatáról további információt az „Azure for Java fejlesztőknek” és a „Munka az Azure DevOps és a Java segítségével” cikkekben olvashatsz.

A Docker mintaprojekt Spring Boot használatával kapcsolatos további részletekért lásd Spring Boot a Dockeron: Az első lépések.

Ha segítségre van szüksége a saját Spring Boot-alkalmazások használatának megkezdéséhez, tekintse meg a Spring Initializrhttps://start.spring.io/.

Az egyszerű Spring Boot-alkalmazás létrehozásának első lépéseiről bővebb információt a Spring Initializr platformon talál a https://start.spring.io/.

Az egyéni Docker-rendszerképek Azure való használatára vonatkozó további példákért lásd: Egyéni Docker-rendszerkép használata Azure Web Apphoz Linuxon.