Flask 개발 기초 ① 개발 환경 구축, flask 설치(+가상 환경 배치 파일 만드는 방법)

반응형
[점프 투 플라스크]를 참고해서 작성한 글입니다.
https://wikidocs.net/81041

 

 

 

1. 파이썬 가상 환경 구축하기

 

 

프로젝트의 첫 발걸음은 가상 환경 구축으로 시작합니다.

 

그냥 디렉토리 하나 만들고 진행하면 되는거 아니야? 할 수 있겠지만

 

 

 

가상 환경은 하나의 PC에 여러개의 독립된 환경을 만들어 줌으로써

 

프로젝트마다 서로 다른 버전의 파이썬과 라이브러리를 사용할 수 있어서 버전 관리하기 편합니다.

 

 

 

협업을 할 때 각 개발자의 PC환경은 다르지만 프로젝트 환경은 맞춰줘야 문제가 생기지 않는데

 

가상환경이 이 문제를 해결해줍니다.

 

 

 

 

 

가상환경 구축을 왜 해야하는지 알았다면 한 번 만들어 봅시다.

 

 

가상환경을 구축할 디렉토리(vens)를 만들고 그 안에서 명령어를 입력해줍니다.

 

 

 

# Bash
mkdir venvs
# C:\venvs
python -m venv <프로젝트명>

 

 

저는 shop_project 라는 가상환경을 만들었습니다.

 

 

 

 

 

 

2. 가상 환경에 진입하기

 

 

 

가상 환경을 만들었다면 진입해서 사용해봅시다.

 

가상환경 안에 Scripts 라는 폴더가 있을겁니다.

 

 

Scripts에 진입한 상태에서 activate 명령어를 입력하거나,

 

절대경로(c:/venvs/shop_project/scripts/activate) 를 입력하면 가상환경에 접속이 됩니다.

 

 

 

# bash
# 방법1
# C:\venvs\shop_project\Scripts>
activate
# bash
# 방법2
c:/venvs/shop_project/scripts/activate

 

 

 

 

왼쪽에 (shop-project) 프롬프트가 보이면 진입 성공입니다.

 

 

 

 

 

 

 

 

3. 프로젝트 디렉토리 생성

 

 

 

가상환경을 만들었으니 이제 프로젝트를 진행 할 디렉토리를 만들어서 프로젝트 진행을 하면 됩니다.

(가상환경 디렉토리는 진입 목적으로 만든거라 프로젝트 작업 장소는 아닙니다)

 

 

 

저는 C드라이브에 myproject 디렉토리를 만들어서 shop 디렉토리를 만들었습니다.

 

 

C:\myproject\shop

 

 

4. 가상 환경에서 Flask 설치

 

 

 

가상환경에 진입했으면 flask를 설치해봅시다.

 

 

리눅스를 사용하셨던 분들은 rpm install, dnf install 명령어를 사용해 본 적이 있을겁니다.

 

리눅스 패키지 관리 도구죠.

 

 

파이썬도 파이썬만의 패키지 관리 도구인  pip을 사용합니다.

 

 

pip install flask 명령어로 flask를 설치를 해줘야 하는데,

 

그 전에 pip update 먼저 해준 후에 설치를 합시다.

(pip이 최신 버전이 아니면 WARNING이 뜨기 때문)

 

 

 

#bash
python -m pip install --upgrade pip
pip install flask

 

 

 

 

 

 

5. Flask 실행

 

 

제대로 동작을 하는지 간단한 테스트를 해봅시다.

 

 

프로젝트 디렉토리에 파이썬 파일을 하나 만든 후 아래 코드를 넣어줍니다.

 

 

 

 

# c:\myproject\shop\pybo.py
from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_pybo():
    return 'Hello, Pybo!'

 

 

그리고 cmd창에 아래 코드를 입력합니다.

 

 

# set FLASK_APP=<파이썬 파일명>
# set FLASK_DEBUG=true
set FLASK_APP=pybo
set FLASK_DEBUG=true

 

 

 

set FLASK_APP은 FLASK_APP 환경변수에 우리가 만든 app을 알려주는 작업입니다.

 

FLASK_APP 환경 변수가 지정되지 않은 경우 자동으로 app.py 파일을 기본 app으로 인식하기 때문에

 

app.py로 파일을 만들었다면 할 필요가 없는 작업입니다.

 

저는 pybo.py로 파일을 만들었기 때문에 세팅을 해줬습니다.

 

 

 

set FLASK_DEBUG=true 작업은 디버그 모드를 활성화시켜서

 

오류가 발생하면 디버깅 결과 메시지를 웹 브라우저에 출력해 주도록 합니다.

 

코드를 변경하면 서버가 자동으로 다시 시작해서 변경된 내용을 적용해주는 편한 기능입니다.

 

 

 

 

flask run으로 확인해 봅시다.

 

 

 

 

 

 


 

+TIP: 가상 환경에 편하게 진입하기(배치 파일 생성)

 

 

 

그런데 작업을 할 때마다 가상환경에 진입하기 위해 모든 경로를 입력하는건 여간 번거로운게 아닙니다.

 

 

만약 배치 파일을 만들어둔다면, 파일 이름만 입력해도 바로 가상환경으로 진입이 가능합니다.

 

 

 

 

저는 가상환경 디렉토리 venvsrun_shop.cmd 라는 이름의 cmd 파일을 만들었습니다.

 

cmd 파일 이름으로 가상환경 진입이 가능하니 편한 이름으로 설정합시다.

 

 

@echo off
cd c:/myproject/shop
set FLASK_APP=pybo
set FLASK_DEBUG=true
c:/venvs/shop_project/scripts/activate

 

 

 

 

 

 

배치 파일을 실행하면 c:/myproject/shop 로 이동 후,

 

flask run이 실행되기 위한 세팅을 해준 뒤

(set FLASK_APP=pybo, set FLASK_ENV=development)

 

c:/venvs/shop_project/scripts/activate 명령어가 실행됩니다.

 

 

 

 

이 배치파일을 어디에서나 사용하려면 환경변수 설정이 필요합니다.

 

 

 

시스템 환경 변수 편집

 

시스템 환경 변수 편집 > 환경변호 > Path 편집 > 새로만들기> 가상환경 디렉토리 경로 추가

 

 

환경 변수 설정 완료 후 cmd 창을 껐다가 켜면 어디서든 배치 파일을 실행시킬 수 있습니다.

 

 

 

 

 

0

 

 

 

 


+ 가상 환경에서 나가는 방법

 

가상환경에서 벗어나는 명령어는 deactivate 입니다.

 

deactivate 명령어는 그 어떤 경로에서든지 잘 알아듣습니다.

 

 

#bash
deactivate

 

 

 

 

반응형
  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유