📚
Lerndokumentationen
Cloud
Cloud
  • Cloud
  • Grundlagen
    • Cloud Computing
    • Betriebskonzepte
      • Cloudarten
      • Computerdienste
      • Dienstmodelle
  • Serverless
  • Azure
    • Was ist Azure?
    • Platform as a Service
      • Datenbank
      • App Service
      • Containerization
    • Function as a Service
    • CI/CD
    • IaC
    • Security
    • Berechtigungen
    • Netzwerk und Firewall
Bereitgestellt von GitBook
Auf dieser Seite
  1. Azure
  2. Platform as a Service

App Service

Die zuvor entwickelte Java-Anwendung soll nun in der Azure Cloud bereitgestellt (deployt) werden. Anstatt wie bisher ĂĽber das Azure-Portal zu arbeiten, erfolgt die gesamte Einrichtung ĂĽber die Azure CLI. Dabei werden Ressourcen erstellt, konfiguriert und mit der Datenbank verbunden.

1

Registrierung des Resource Providers

Damit Azure weiss, welche Dienste im Abonnement verfügbar sein sollen, muss der benötigte Resource Provider (Microsoft.Web) registriert werden. Dies ist notwendig, um z. B. Web-Apps oder App Services erstellen zu können:

2

App Service Plan erstellen

Ein App Service Plan dient als Container fĂĽr Web-Anwendungen und legt Skalierungsoptionen fest. Er wird mit folgendem Befehl erstellt:

az appservice plan create \
    --name <app-service-name> \
    --resource-group <resource-group-name> \
    --sku B1 --is-linux
3

Web App erstellen

Darauf basierend wird die Web App (Java-Anwendung) angelegt:

az webapp create \
    --resource-group <resource-group-name> \
    --plan <app-service-name> \
    --name <app-name> \
    --runtime "JAVA:17-java17"

Die Konsole zeigt eine URL (z. B. https://<app-name>.azurewebsites.net) – unter dieser wird die Anwendung später erreichbar sein.

4

Deployen der Java-Anewndung

Die Anwendung wird mittels .jar-Datei auf die Web App geladen:

az webapp deploy \
    --resource-group <resource-group-name> \
    --name <app-name> \
    --src-path <path-to-jar-file> \
    --type jar

Falls der erste Versuch fehlschlägt, liegt dies oft an falschen Datenbankverbindungen.

5

Fehleranalyse

Bei Problemen hilft das Live-Loggen der Anwendung:

az webapp log tail -g <resource-group-name> -n <app-name>

Ein typischer Fehler: Die Anwendung versucht, lokal auf eine Datenbank zuzugreifen (localhost:3306), obwohl sie in der Cloud läuft.

6

Konfiguration der Datenbankverbindung

Die Anwendung muss mit der Azure-Datenbank verbunden werden. Dazu werden die Verbindungsdaten als Umgebungsvariablen gesetzt:

az webapp config appsettings set \
    --resource-group <resource-group-name> \
    --name <app-name> \
    --settings \
    SPRING_DATASOURCE_URL= \
    SPRING_DATASOURCE_USERNAME=<username> \
    SPRING_DATASOURCE_PASSWORD=<password>
7

TLS deaktivieren

Standardmässig verlangt Azure MySQL eine verschlüsselte Verbindung. Für diesen Auftrag wird TLS deaktiviert:

az mysql flexible-server parameter set \
    --resource-group <resource-group-name> \
    --server-name <mysql-server-name> \
    --name require_secure_transport \
    --value OFF

In Produktivsystem niemals TLS deaktivieren

8

Anwendung erneut deployen

Nach erfolgreicher Konfiguration wird die .jar-Datei nochmals deployed. Wenn alles korrekt ist, ist die Anwendung über die angegebene URL erreichbar – zum Beispiel via Swagger-UI.

VorherigeDatenbankNächsteContainerization

Zuletzt aktualisiert vor 8 Tagen