Delen via


Een Python-web-app implementeren op een VIRTUELE machine in Azure Stack Hub

U kunt een VIRTUELE machine maken om uw Python-web-app te hosten in Azure Stack Hub. In dit artikel stelt u een server in, configureert u de server voor het hosten van uw Python-web-app en implementeert u de app vervolgens in Azure Stack Hub.

In dit artikel wordt Gebruikgemaakt van Python 3.x met Flask in een virtuele omgeving op een Nginx-server. Gebruik Ubuntu Server 18.04 LTS- vanuit Azure Stack Hub Marketplace.

Een VIRTUELE machine maken

  1. Stel uw virtuele machine in Azure Stack Hub op door de instructies in Een Virtuele Linux-machine implementeren om een web-app te hosten in Azure Stack Hubte volgen. Gebruik Ubuntu Server 18.04 LTS- vanuit Azure Stack Hub Marketplace.

  2. Zorg ervoor dat de volgende poorten toegankelijk zijn in het deelvenster VM-netwerk:

    Haven Protocol Beschrijving
    80 HTTP Hypertext Transfer Protocol (HTTP) is het protocol dat wordt gebruikt om webpagina's van servers te leveren. Clients maken verbinding via HTTP met een DNS-naam of IP-adres.
    443 HTTPS Hypertext Transfer Protocol Secure (HTTPS) is een beveiligde versie van HTTP waarvoor een beveiligingscertificaat is vereist en waarmee de versleutelde overdracht van informatie mogelijk is.
    22 SSH Secure Shell (SSH) is een versleuteld netwerkprotocol voor beveiligde communicatie. U gebruikt deze verbinding met een SSH-client om de VIRTUELE machine te configureren en de app te implementeren.
    3389 RDP (Remote Desktop Protocol) Facultatief. Het Remote Desktop Protocol (RDP) maakt het mogelijk een verbinding met een extern bureaublad tot stand te brengen en op uw computer een grafische gebruikersinterface te gebruiken.
    5000, 8000 Aangepast De poorten die worden gebruikt door het Flask-webframework tijdens de ontwikkeling. Voor een productieserver routeert u uw verkeer via 80 en 443.
  3. Selecteer in deelvenster Overzicht de optie configureren onder DNS-naam.

  4. Selecteer statische en geef de computer een naam zodat u een DNS-naam hebt, zoals: <yourmachine>.<local>.cloudapp.azurestack.contoso.com.

Python installeren

  1. Maak verbinding met uw VIRTUELE machine met behulp van uw SSH-client. Zie Verbinding maken via SSH met PuTTyvoor instructies.

  2. Voer bij de bash-prompt op uw virtuele machine de volgende opdracht in:

    sudo apt-get update
    sudo apt-get -y install python3 python3-dev
    sudo apt install python3-pip
    
  3. Valideer uw installatie. Terwijl u nog steeds verbinding hebt met uw virtuele machine in uw SSH-sessie, voert u de volgende opdracht in om Python te openen en het versienummer te noteren. Typ vervolgens quit() om de Python REPL af te sluiten.

    python3
    quit()
    
  4. Nginx-installeren, een lichtgewicht webserver. Terwijl u nog steeds verbinding hebt met uw virtuele machine in uw SSH-sessie, voert u de volgende opdracht in:

    sudo apt-get -y install nginx
    
  5. Git installeren. Terwijl u nog steeds verbinding hebt met uw virtuele machine in uw SSH-sessie, voert u de volgende opdracht in:

    sudo apt-get -y install git
    

De app implementeren en uitvoeren

  1. Stel uw Git-opslagplaats in op de VIRTUELE machine. Terwijl u nog steeds verbinding hebt met uw VIRTUELE machine in uw SSH-sessie, voert u de volgende opdrachten in:

    git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git   
    cd azure-stack-hub-flask-hello-world
    
  2. Terwijl u nog steeds verbinding hebt met uw VIRTUELE machine in uw SSH-sessie, voert u de volgende opdrachten in om de afhankelijkheden te installeren. Installeer Flask met apt en gebruik vervolgens pip om de modules vanuit requirements.txtte laden.

    sudo apt install python3-flask
    pip3 install -r requirements.txt
    
    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    
  3. Ga naar de nieuwe server. Je zou je draaiende webapplicatie moeten zien.

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

Uw server bijwerken

  1. Maak verbinding met uw VIRTUELE machine in uw SSH-sessie. Stop de server door Ctrl+C te typen.

  2. Voer de volgende opdrachten in:

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. Activeer de virtuele omgeving en start de app:

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

Volgende stappen