Raspberry Pi

라즈베리파이 Flask(플라스크) 웹 프레임워크 설치 방법

Crazy-M2M 2022. 8. 10. 11:07
300x250
반응형

안녕하세요. Crazy M2M입니다.
오늘은 라즈베리파이에 Flask 웹 프레임워크 설치 방법에 대해서 알아보도록 하겠습니다.

Flask는 파이썬에서 사용 가능한 웹 프레임워크(Web Framework)입니다.
Micro Web Framework 이렇게도 이야기합니다. ㅎㅎㅎ
간단하게 웹 사이트 또는 간단한 API 서버를 만드는 데 특화되어 있는 Python 기반의 Web Framework입니다.
라즈베리파이에서는 GPIO 제어가 가능한데 Flask를 사용하면 Web에서 GPIO도 제어가 가능합니다.
즉 IOT 세상을 구현할 수가 있다는 말이지요. ^^
스마트 폰만 있으면, 집에 있는 전자 제품을 제어할 수 있어요. ㅋㅋㅋ
오늘은 설치 방법에 대해서 먼저 알아볼게요.

Flask의 장점은 무엇일까요? 쉽게 개발이 가능하다 ^^
-. 가볍게 배울 수 있다! (Python, HTML 만 알아도 가능하지요 )
-. 가볍게 사용할 수 있다! (코드 몇 줄이면 홈페이지가 뚝딱)
-. 가볍게 배포할 수 있다! (웹서버를 바로 실행할 수 있어요. )

Flask의 단점은 무엇일까요? 가벼운 만큼 기능에 제약이 있다.
-. django 보다 자유도는 높으나, 제공해 주는 기능이 적습니다.
-. 복잡한 어플리케이션을 만들려고 할 때 해야 할 것들이 많아요.

이제부터 Flask 설치 방법에 대해서 알아보도록 할게요 ^^
먼저 라즈베리파이를 최신의 상태로 만들 줄게요.

sudo apt-get update
sudo apt-get upgrade


Flask를 사용하기 위해서는 라즈베리파이에 Python이 설치되어 있어야 해요.
그래서 Python 설치하는 방법은 아래와 같이 하시면 돼요 ^^

sudo apt install python3


다음으로 Flask를 설치해 볼게요.
간단하쥬 ^^ 머 별게 없습니다. ㅋㅋㅋ

sudo pip install flask

Flask 설치


이와 이렇게 된 거 간단한 Flask 웹서버를 만들어 볼게요 ^^ ㅋㅋㅋ

mkdir hello
cd hello
sudo nano hello.py

디렉토리 및 파일 생성

 

반응형

아래 코드는 간단한 Hello World 웹서버예요. 정말 몇 줄 안되지요?
아래와 같이 hello.py에 코드를 작성해 줍니다.
웹서버의 IP는 127.0.0.1로 설정하고, Port는 3000으로 했어요.
나중에 변경이 가능합니다.

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello, World!'
    
if __name__ == '__main__':
        app.debug = True
        app.run(host="127.0.0.1", port="3000")

코드 작성


아래와 같이 코드를 다 짯으니 실행시켜보겠습니다.

python hello.py

Flask 실행 화면


웹서버가 실행되었습니다. 웹서버 IP는 127.0.0.1이고 Port는 3000번에 제대로 뜨네요.
잘 만들어졌습니다. 크롬으로 위 IP로 들어가면 Hello World가 뜨는 것을 확인할 수 있어요.

Flask를 잘 개발하려면 File 구조를 잘 파악하는 것이 중요한데요.
Flask File Structure는 아래와 같습니다.

Flask 파일 구조

 

300x250

Flask API Site는 아래에 있으니 들어가셔서 다양한 기능에 대해서 참고하시면 돼요^^
https://flask.palletsprojects.com/en/2.1.x/

 

Welcome to Flask — Flask Documentation (2.1.x)

 

flask.palletsprojects.com


이것으로 Flask의 설치 방법 및 Hello.py 기본 Template Code에 대해서 알아보았습니다.
다음은 좀 더 심화 과정을 포스팅할게요. ^^
오늘도 화이팅 ~~~~

728x90
반응형