SW/리눅스

Ubuntu 18.04 : Flask 설치하는 방법, 예제, 명령어

얇은생각 2021. 3. 15. 07:30
반응형

Flask는 개발자가 안전하고 확장 가능하며 유지 관리가 가능한 웹 애플리케이션을 구축할 수 있도록 설계된 Python용 무료 오픈 소스 마이크로 웹 프레임워크입니다. 플라스크는 Werkzeug를 기반으로 하며 Jinja2를 템플릿 엔진으로 사용합니다.

Django와 달리 기본적으로 Plask에는 ORM, 양식 유효성 검사 또는 타사 라이브러리에서 제공하는 기타 기능이 포함되어 있지 않습니다. 플라스크는 플라스크 응용 프로그램에 기능을 추가하는 Python 패키지인 확장을 염두에 두고 제작되었습니다.

플라스크를 설치하는 방법은 필요에 따라 다릅니다. Pip을 사용하여 시스템 전체에 설치하거나 Python 가상 환경에 설치할 수 있습니다.

플라스크 패키지는 공식 Ubuntu 저장소에도 포함되어 있으며, 적절한 패키지 관리자를 사용하여 설치할 수 있습니다. 이 방법은 Ubuntu 18.04에 플라스크를 설치하는 가장 쉬운 방법이지만 가상 환경에 설치하는 것만큼 유연하지는 않습니다. 또한 저장소에 포함된 버전은 항상 최신 버전의 플라스크보다 뒤떨어집니다.

Python 가상 환경의 주요 목적은 서로 다른 Python 프로젝트를 위한 격리된 환경을 만드는 것입니다. 이렇게 하면 한 대의 컴퓨터에 여러 가지 플라스크 환경을 구축하고 프로젝트별로 특정 버전의 모듈을 설치할 수 있습니다. 이 모듈은 다른 플라스크 설치에 영향을 미칠까 염려하지 않습니다. 글로벌 환경에 플라스크를 설치하면 컴퓨터에 하나의 플라스크 버전만 설치할 수 있습니다.

 

 

Ubuntu 18.04 : Flask 설치하는 방법, 예제, 명령어

 

 

Ubuntu 18.04에 플라스크 설치

다음 절에서는 Ubuntu 18.04의 Python 가상 환경에 Flask를 설치하는 방법에 대한 정보를 제공합니다.

 

1. Python 3 및 venv 설치

Ubuntu 18.04는 기본적으로 Python 3.6과 함께 제공됩니다. 다음을 입력하여 시스템에 Python 3이 설치되어 있는지 확인할 수 있습니다.

python3 -V

# Python 3.6.6

 

 

Python 3.6부터 가상 환경을 생성하는 권장 방법은 venv 모듈을 사용하는 것입니다. venv 모듈을 제공하는 python3-venv 패키지를 설치하려면 다음 명령을 실행합니다.

sudo apt install python3-venv

 

 

모듈이 설치되면 플라스크 적용을 위한 가상 환경을 만들 준비가 되었습니다.

 

 

2. 가상 환경 생성

먼저 Python 3 가상 환경을 저장할 디렉토리로 이동합니다. 사용자의 홈 디렉토리 또는 사용자가 읽기 및 쓰기 권한을 가진 다른 디렉토리일 수 있습니다.

 Plask(플라스크) 응용 프로그램의 새 디렉터리를 만들고 해당 디렉터리를 탐색합니다.

mkdir my_flask_app
cd my_flask_app

 

 

디렉토리 내에서 다음 명령을 실행하여 새 가상 환경을 생성합니다.

python3 -m venv venv
 

 

 

위의 명령은 python 이진, pip 패키지 관리자, 표준 python 라이브러리 및 기타 지원 파일의 복사본을 포함하는 venv라는 디렉토리를 생성합니다. 가상 환경에 원하는 이름을 사용할 수 있습니다.

이 가상 환경 사용을 시작하려면 활성화 스크립트를 실행하여 가상 환경을 활성화해야 합니다.

source venv/bin/activate

 

 

활성화되면 $PATH 변수의 시작 부분에 가상 환경의 bin 디렉토리가 추가됩니다. 또한 셸 프롬프트가 변경되고 현재 사용 중인 가상 환경의 이름이 표시됩니다.

 

 

3. 플라스크 설치

이제 가상 환경이 활성화되었으므로 Python 패키지 관리자 pip을 사용하여 Plask를 설치할 수 있습니다.

pip install Flask

 

 

가상 환경에서는 pip3 대신 명령 pip을 사용하고 python3 대신 python을 사용할 수 있습니다.

플라스크 버전을 인쇄하는 다음 명령으로 설치를 확인합니다.

이 기사를 작성할 당시, 최신 공식 플라스크 버전은 1.0.2입니다.

python -m flask --version

# Flask 1.0.2
# Python 3.6.6 (default, Sep 12 2018, 18:26:19)
# [GCC 8.0.1 20180414 (experimental) [trunk revision 259383]]

 

 

플라스크 버전은 여기에 표시된 버전과 다를 수 있습니다.

 

 

4. 간단한 플라스크 애플리케이션 생성

본 가이드에서는 "Hello World!"라는 텍스트를 표시하는 간단한 Hello World 애플리케이션을 만들 것입니다.

 텍스트 편집기 또는 Python IDE를 열고 다음 파일을 만듭니다.

# ~/my_flask_app/hello.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

 

 

코드 라인을 라인별로 분석해보겠습니다.

첫 번째 줄에서는 플라스크 클래스를 가져옵니다.

다음으로 플라스크 클래스의 인스턴스를 만듭니다.

그런 다음 경로() 장식기를 사용하여 / 경로에 hello_world 함수를 등록합니다. 이 경로를 요청하면 hello_world가 호출되고 "Hello World!" 메시지가 클라이언트에 반환됩니다.

파일을 hello.py으로 저장하고 터미널 창으로 돌아갑니다.

 

 

5. 개발 서버 테스트

플라스크 명령을 사용하여 애플리케이션을 실행하지만, 그 전에 플라스크_APP 환경 변수를 지정하여 애플리케이션을 로드하는 방법을 플라스크에 알려야 합니다.

위의 명령은 서버에 내장된 개발을 시작합니다.

출력은 다음과 같습니다.

export FLASK_APP=hello.py
flask run

#  * Serving Flask app "hello.py"
#  * Environment: production
#    WARNING: Do not use the development server in a production environment.
#    Use a production WSGI server instead.
#  * Debug mode: off
#  * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

 

 

가상 시스템에 Flask를 설치한 후 Flask 개발 서버에 액세스하려면 --host=0.0.0.0을 flask 실행 명령에 추가하여 서버를 공개적으로 사용할 수 있습니다.

웹 브라우저에서 http://127.0.0.1:5000을 열면 "Hello World!" 메시지가 표시됩니다.

개발 서버를 중지하려면 터미널에 CTRL-C를 입력합니다.

 

 

6. 가상 환경 비활성화

작업을 마치면 비활성화를 입력하여 환경을 비활성화하면 정상 셸로 돌아갑니다.

deactivate

 

반응형