Een Python-web-app implementeren op een virtuele Azure Stack Hub
U kunt een VM maken voor het hosten van uw Python-web-app 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 Python 3.x gebruikt om Flask uit te voeren in een virtuele omgeving op een Nginx-server. Gebruik Ubuntu Server 18.04 LTS van de Azure Stack Hub Marketplace.
Een virtuele machine maken
Stel uw VM in Azure Stack Hub door de instructies te volgen in Deploy a Linux VM to host a web app in Azure Stack Hub. Gebruik Ubuntu Server 18.04 LTS van de Azure Stack Hub Marketplace.
Zorg ervoor dat in het deelvenster VM-netwerk de volgende poorten toegankelijk zijn:
Poort Protocol Description 80 HTTP Hypertext Transfer Protocol (HTTP) is het protocol dat wordt gebruikt voor het leveren van webpagina's van servers. 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 die een beveiligingscertificaat vereist en de versleutelde overdracht van gegevens toestaat. 22 SSH Secure Shell (SSH) is een versleuteld netwerkprotocol voor beveiligde communicatie. U gebruikt deze verbinding met een SSH-client om de VM te configureren en de app te implementeren. 3389 RDP Optioneel. Met Remote Desktop Protocol (RDP) kan een externe bureaubladverbinding een grafische gebruikersinterface op uw computer gebruiken. 5000, 8000 Aangepast telefoonnummer De poorten die worden gebruikt door het Flask-web-framework in ontwikkeling. Voor een productieserver routeert u uw verkeer via 80 en 443. Selecteer configureren onder DNS-naam in het deelvenster Overzicht.
Selecteer statisch en noem de machine zo dat u een DNS-naam hebt, zoals: .
Python installeren
Verbinding maken met uw VM met behulp van uw SSH-client. Zie voor instructies Verbinding maken via SSH met PuTTy.
Voer bij de bash-prompt op uw VM de volgende opdracht in:
sudo apt-get update sudo apt-get -y install python3 python3-dev sudo apt install python3-pip
Valideer de installatie. Terwijl u nog steeds verbonden bent met uw VM in uw SSH-sessie, voert u de volgende opdracht uit om Python te openen en noteer het versienummer. Typ vervolgens om
quit()
de Python REPL af te sluiten.python3 quit()
Installeer Nginx, een lichtgewicht webserver. Terwijl u nog steeds verbonden bent met uw VM in uw SSH-sessie, voert u de volgende opdracht in:
sudo apt-get -y install nginx
Installeer Git, een algemeen gedistribueerd versiebeheer- en broncodebeheersysteem (SCM). Terwijl u nog steeds verbonden bent met uw VM in uw SSH-sessie, voert u de volgende opdracht in:
sudo apt-get -y install git
De app implementeren en uitvoeren
Stel uw Git-opslagplaats in op de VM. Voer de volgende opdrachten in terwijl u nog steeds bent verbonden met uw VM in uw SSH-sessie:
git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git cd azure-stack-hub-flask-hello-world
Terwijl u nog steeds verbonden bent met uw VM in uw SSH-sessie, voert u de volgende opdrachten in om de afhankelijkheden te installeren. Installeer Flask met behulp van apt en vervolgens pip om de modules uit te laden
requirements.txt
.sudo apt install python3-flask pip3 install -r requirements.txt export FLASK_APP=application.py flask run -h 0.0.0.0
Ga naar uw nieuwe server. Als het goed is, ziet u de webtoepassing die wordt uitgevoerd.
<yourmachine>.<local>.cloudapp.azurestack.contoso.com:5000
Uw server bijwerken
Verbinding maken aan uw VM in uw SSH-sessie. Stop de server door Ctrl+C te typen.
Voer de volgende opdrachten in:
cd azure-stack-hub-flask-hello-world git pull
Activeer de virtuele omgeving en start de app:
export FLASK_APP=application.py flask run -h 0.0.0.0
Volgende stappen
- Meer informatie over ontwikkelen voor Azure Stack Hub.
- Meer informatie over algemene implementaties voor Azure Stack Hub als IaaS.
- Als u de programmeertaal Python wilt leren en aanvullende resources voor Python wilt vinden, gaat u naar Python.org.