다음을 통해 공유


Azure Stack Hub에서 VM에 Python 웹앱 배포

Azure Stack Hub에서 Python 웹앱을 호스트하는 VM을 만들 수 있습니다. 이 문서에서는 서버를 설정하고, Python 웹앱을 호스트하도록 서버를 구성한 다음, Azure Stack Hub에 앱을 배포합니다.

이 문서에서는 Nginx 서버의 가상 환경에서 Flask를 실행하는 Python 3.x를 사용합니다. Azure Stack Hub Marketplace에서 Ubuntu Server 18.04 LTS 사용합니다.

VM 만들기

  1. Azure Stack Hub에서 웹앱을 호스트할 Linux VM을 배포하려면 Azure Stack Hub에 가상 머신 설정 지침에 따라 VM을 설정하십시오. Azure Stack Hub Marketplace에서 Ubuntu Server 18.04 LTS 사용합니다.

  2. VM 네트워크 창에서 다음 포트에 액세스할 수 있는지 확인합니다.

    항구 프로토콜 설명
    80 HTTP HTTP(Hypertext Transfer Protocol)는 서버에서 웹 페이지를 배달하는 데 사용되는 프로토콜입니다. 클라이언트는 DNS 이름 또는 IP 주소를 사용하여 HTTP를 통해 연결합니다.
    443 HTTPS HTTPS(Hypertext Transfer Protocol Secure)는 보안 인증서가 필요하고 암호화된 정보 전송을 허용하는 보안 버전의 HTTP입니다.
    22 SSH SSH(Secure Shell)는 보안 통신을 위한 암호화된 네트워크 프로토콜입니다. 이 연결을 SSH 클라이언트와 함께 사용하여 VM을 구성하고 앱을 배포합니다.
    3389 원격 데스크톱 프로토콜 (RDP) 선택적. RDP(원격 데스크톱 프로토콜)를 사용하면 원격 데스크톱 연결에서 컴퓨터의 그래픽 사용자 인터페이스를 사용할 수 있습니다.
    5000, 8000 관습 개발 중인 Flask 웹 프레임워크에서 사용하는 포트입니다. 프로덕션 서버의 경우 트래픽을 80 및 443을 통해 라우팅합니다.
  3. 개요 창에서 DNS 이름으로 구성하는 선택합니다.

  4. 정적 선택한 다음, DNS 이름(예: <yourmachine>.<local>.cloudapp.azurestack.contoso.com)을 갖도록 컴퓨터의 이름을 지정합니다.

Python 설치

  1. SSH 클라이언트를 사용하여 VM에 연결합니다. 자세한 내용은 PuTTy SSH를 통해Connect를 참조하세요.

  2. VM의 bash 프롬프트에서 다음 명령을 입력합니다.

    sudo apt-get update
    sudo apt-get -y install python3 python3-dev
    sudo apt install python3-pip
    
  3. 설치의 유효성을 검사합니다. SSH 세션에서 VM에 연결되어 있는 동안 다음 명령을 입력하여 Python을 열고 버전 번호를 확인합니다. 그런 다음 quit() 입력하여 Python REPL을 종료합니다.

    python3
    quit()
    
  4. 경량 웹 서버인 Nginx설치합니다. SSH 세션에서 여전히 VM에 연결되어 있는 동안 다음 명령을 입력합니다.

    sudo apt-get -y install nginx
    
  5. Git설치합니다. SSH 세션에서 여전히 VM에 연결되어 있는 동안 다음 명령을 입력합니다.

    sudo apt-get -y install git
    

앱 배포 및 실행

  1. VM에서 Git 리포지토리를 설정합니다. SSH 세션에서 여전히 VM에 연결되어 있는 동안 다음 명령을 입력합니다.

    git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git   
    cd azure-stack-hub-flask-hello-world
    
  2. SSH 세션에서 VM에 연결되어 있는 동안 다음 명령을 입력하여 종속성을 설치합니다. apt를 사용하여 Flask를 설치한 다음 pip를 사용하여 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. 새 서버로 이동합니다. 실행 중인 웹 애플리케이션이 표시됩니다.

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

서버 업데이트

  1. SSH 세션에서 VM에 연결합니다. Ctrl+C를 입력하여 서버를 중지합니다.

  2. 다음 명령을 입력합니다.

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. 가상 환경을 활성화하고 앱을 시작합니다.

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

다음 단계

  • Azure Stack Hub 대해 개발하는방법에 대해 자세히 알아봅니다.
  • Azure Stack Hub의 IaaS 에 대한일반적인 배포 방법을 알아봅니다.
  • Python 프로그래밍 언어를 알아보고 Python에 대한 추가 리소스를 찾으려면 Python.org참조하세요.