Freigeben über


Bereitstellen einer Python-Web-App auf einer VM in Azure Stack Hub

Sie können eine VM erstellen, um Ihre Python-Web-App in Azure Stack Hub zu hosten. In diesem Artikel richten Sie einen Server ein, konfigurieren den Server zum Hosten Ihrer Python-Web-App und stellen die App dann unter Azure Stack Hub bereit.

In diesem Artikel wird Python 3.x mit Flask in einer virtuellen Umgebung auf einem Ngnix-Server verwendet. Verwenden Sie Ubuntu Server 18.04 LTS vom Azure Stack Hub-Marketplace.

Erstellen einer VM

  1. Richten Sie Ihre VM in Azure Stack Hub ein, indem Sie die Anleitung unter Bereitstellen einer Linux-VM zum Hosten einer Web-App in Azure Stack Hub befolgen. Verwenden Sie Ubuntu Server 18.04 LTS vom Azure Stack Hub-Marketplace.

  2. Stellen Sie im Bereich für das VM-Netzwerk sicher, dass auf die folgenden Ports zugegriffen werden kann:

    Port Protocol BESCHREIBUNG
    80 HTTP Das Hypertext Transfer-Protokoll (HTTP) wird zum Bereitstellen von Webseiten über Server verwendet. Clients stellen eine Verbindung per HTTP über einen DNS-Namen oder eine IP-Adresse her.
    443 HTTPS Das Hypertext Transfer-Protokoll Secure (HTTPS) ist eine sichere Version von HTTP, für die ein Sicherheitszertifikat benötigt wird und die die verschlüsselte Übertragung von Informationen ermöglicht.
    22 SSH Secure Shell (SSH) ist ein verschlüsseltes Netzwerkprotokoll für die sichere Kommunikation. Sie verwenden diese Verbindung mit einem SSH-Client, um den virtuellen Computer zu konfigurieren und die App bereitzustellen.
    3389 RDP Optional. Über das Remotedesktopprotokoll (RDP) kann für eine Remotedesktopverbindung eine grafische Benutzeroberfläche auf Ihrem Computer verwendet werden.
    5000, 8000 Benutzerdefiniert Die Ports, die während der Entwicklung vom Flask-Webframework verwendet werden. Auf einem Produktionsserver leiten Sie den Datenverkehr über die Ports 80 und 443.
  3. Wählen Sie im Bereich Übersicht unter „DNS-Name“ die Option Konfigurieren aus.

  4. Wählen Sie die Option Statisch aus, und benennen Sie den Computer so, dass Sie über einen DNS-Namen im folgenden Format verfügen: <yourmachine>.<local>.cloudapp.azurestack.contoso.com.

Installieren von Python

  1. Stellen Sie mit Ihrem SSH-Client eine Verbindung mit Ihrem virtuellen Computer her. Anleitungen finden Sie unter Herstellen einer Verbindung über SSH mit PuTTY.

  2. Geben Sie an Ihrer Bash-Eingabeaufforderung auf Ihrer VM den folgenden Befehl ein:

    sudo apt-get update
    sudo apt-get -y install python3 python3-dev
    sudo apt install python3-pip
    
  3. Überprüfen Sie die Installation. Behalten Sie die Verbindung mit der VM in Ihrer SSH-Sitzung bei, und geben Sie den folgenden Befehl ein, um Python zu öffnen. Notieren Sie sich dann die Versionsnummer. Geben Sie anschließend quit() ein, um Python-REPL zu beenden.

    python3
    quit()
    
  4. Führen Sie die Installation von Nginx durch. Hierbei handelt es sich um einen einfachen Webserver. Geben Sie bei bestehender Verbindung mit Ihrer VM in derselben SSH-Sitzung den folgenden Befehl ein:

    sudo apt-get -y install nginx
    
  5. Führen Sie die Installation von Git durch. Hierbei handelt es sich um ein weit verbreitetes System für die Versionskontrolle und Quellcodeverwaltung (Source Code Management, SCM). Geben Sie bei bestehender Verbindung mit Ihrer VM in derselben SSH-Sitzung den folgenden Befehl ein:

    sudo apt-get -y install git
    

Bereitstellen und Ausführen der App

  1. Richten Sie Ihr Git-Repository auf der VM ein. Geben Sie bei bestehender Verbindung mit Ihrer VM in derselben SSH-Sitzung die folgenden Befehle ein:

       git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git
    
       cd azure-stack-hub-flask-hello-world
    
  2. Geben Sie bei bestehender Verbindung mit Ihrer VM in derselben SSH-Sitzung die folgenden Befehle ein, um die Abhängigkeiten zu installieren. Installieren Sie Flask per „apt“, und führen Sie dann einen PIP-Vorgang durch, um die Module aus requirements.txt zu laden.

    sudo apt install python3-flask
    pip3 install -r requirements.txt
    
    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    
  3. Navigieren Sie zu Ihrem neuen Server. Die ausgeführte Webanwendung sollte angezeigt werden.

    <yourmachine>.<local>.cloudapp.azurestack.contoso.com:5000
    

Aktualisieren des Servers

  1. Stellen Sie in der SSH-Sitzung eine Verbindung mit Ihrer VM her. Halten Sie den Server an, indem Sie STRG+C eingeben.

  2. Geben Sie die folgenden Befehle ein:

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. Aktivieren Sie die virtuelle Umgebung, und starten Sie die App:

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

Nächste Schritte