Wdrażanie aplikacji internetowej w języku Python na maszynie wirtualnej w Azure Stack Hub

Możesz utworzyć maszynę wirtualną, która będzie hostować aplikację internetową w języku Python w Azure Stack Hub. W tym artykule skonfigurujesz serwer, skonfigurujesz serwer do hostować aplikację internetową w języku Python, a następnie wdrożysz aplikację w Azure Stack Hub.

W tym artykule jest używany język Python 3.x uruchomiony na platformie Flask w środowisku wirtualnym na serwerze Nginx. Użyj systemu Ubuntu Server 18.04 LTS z witryny Azure Stack Hub Marketplace.

Tworzenie maszyny wirtualnej

  1. Skonfiguruj maszynę wirtualną w Azure Stack Hub, zgodnie z instrukcjami w teście Wdrażanie maszyny wirtualnej z systemem Linux do hostować aplikację internetową w Azure Stack Hub. Użyj systemu Ubuntu Server 18.04 LTS z witryny Azure Stack Hub Marketplace.

  2. W okienku Sieć maszyn wirtualnych upewnij się, że dostępne są następujące porty:

    Port Protokół Opis
    80 HTTP Protokół HTTP (Hypertext Transfer Protocol) to protokół używany do dostarczania stron internetowych z serwerów. Klienci łączą się za pośrednictwem protokołu HTTP przy użyciu nazwy DNS lub adresu IP.
    443 HTTPS Protokół HTTPS (Hypertext Transfer Protocol Secure) to bezpieczna wersja protokołu HTTP, która wymaga certyfikatu zabezpieczeń i umożliwia zaszyfrowanie transmisji informacji.
    22 Protokół SSH Secure Shell (SSH) to szyfrowany protokół sieciowy do bezpiecznej komunikacji. To połączenie jest stosowane z klientem SSH w celu skonfigurowania maszyny wirtualnej i wdrożenia aplikacji.
    3389 RDP Opcjonalny. Interfejs Remote Desktop Protocol (RDP) umożliwia podłączanie pulpitu zdalnego przy użyciu graficznego interfejsu użytkownika na komputerze.
    5000, 8000 Niestandardowy Porty używane w programie przez platformę internetową Flask. W przypadku serwera produkcyjnego ruch jest przekierowyny przez sieci 80 i 443.
  3. W okienku Przegląd wybierz pozycję Konfiguruj w obszarze Nazwa DNS.

  4. Wybierz pozycję static (statyczny), a następnie nadaj maszynie nazwę, aby mieć nazwę DNS, taką jak : .

Instalowanie języka Python

  1. Połączenie z maszyną wirtualną przy użyciu klienta SSH. Aby uzyskać instrukcje, zobacz Połączenie za pośrednictwem SSH z putty.

  2. W wierszu polecenia powłoki bash na maszynie wirtualnej wprowadź następujące polecenie:

    sudo apt-get update
    sudo apt-get -y install python3 python3-dev
    sudo apt install python3-pip
    
  3. Zweryfikuj instalację. Mimo że nadal masz połączenie z maszyną wirtualną w sesji SSH, wprowadź następujące polecenie, aby otworzyć język Python i zanotować numer wersji. Następnie wpisz , quit() aby zakończyć działanie środowiska REPL języka Python.

    python3
    quit()
    
  4. Zainstaluj serwer Nginx, lekki serwer internetowy. Mimo że nadal masz połączenie z maszyną wirtualną w sesji SSH, wprowadź następujące polecenie:

    sudo apt-get -y install nginx
    
  5. Zainstaluj usługę Git, powszechnie rozproszony system kontroli wersji i zarządzania kodem źródłowym (SCM). Mimo że nadal masz połączenie z maszyną wirtualną w sesji SSH, wprowadź następujące polecenie:

    sudo apt-get -y install git
    

Wdrażanie i uruchamianie aplikacji

  1. Skonfiguruj repozytorium Git na maszynie wirtualnej. Mimo że nadal masz połączenie z maszyną wirtualną w sesji SSH, wprowadź następujące polecenia:

       git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git
    
       cd azure-stack-hub-flask-hello-world
    
  2. Mimo że nadal masz połączenie z maszyną wirtualną w sesji SSH, wprowadź następujące polecenia, aby zainstalować zależności. Zainstaluj program Flask przy użyciu narzędzia apt, a następnie pip, aby załadować moduły z narzędzia requirements.txt.

    sudo apt install python3-flask
    pip3 install -r requirements.txt
    
    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    
  3. Przejdź do nowego serwera. Powinna zostać wyświetlony uruchomiona aplikacja internetowa.

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

Aktualizowanie serwera

  1. Połączenie do maszyny wirtualnej w sesji SSH. Zatrzymaj serwer, naciskając klawisze Ctrl+C.

  2. Wprowadź następujące polecenia:

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. Aktywuj środowisko wirtualne i uruchom aplikację:

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

Następne kroki