Louie NRT Story

[AWS] 파이썬 Flask 개발 환경 구축 본문

전력에너지

[AWS] 파이썬 Flask 개발 환경 구축

hyeok0724.kim@gmail.com 2025. 10. 12. 09:54
반응형

작성일: 25년 10월 12일

 

Contents

1. EC2 생성

2. EC2 접속(Putty)

3. FTP 접속(FileZilla)

4. Python 설정

5. Flask 실행

 

 

1. EC2 생성 및 보안

 1) 인스턴스 생성

 

 - "인스턴스 시작" 버튼을 클릭

 

 

 - 인스턴스의 이름을 입력 (예시: FlaskTest01)

 

 

 - Ubuntu 선택

 

 - 키 페어 생성 (예시 이름: FlaskTest01)

※ 예시에서는 Putty로 접속을 하기 위해 .ppk로 선택함

 

 

 - 가장 밑에 "인스턴스 시작" 버튼을 클릭

 

 

 - 인스턴스 생성 명령이 수행되기 까지 약 2분 정도 소요됨

 - 인스턴스가 정상적으로 생성되면 인스턴스 상태가 "실행 중" 으로 나타남

 

 2) 보안 설정

 

 - 외부에서 접속이 가능한 포트를 열어 놓기 위해서 생성 EC2 선택, 하위에 "보안" -> "보안그룹" 선택

 - "인바운드 규칙 편집"을 누름 

 - "규칙추가" 버튼을 눌러 접속할 "5000" 포트를 추가함

 - "규칙저장" 버튼을 눌러 해당 내용을 저장함

※ 하위 코드에서 Flask 동작을 5000 포트로 설정하기 때문에 5000포트를 열어놓아야 외부에서 접속이 가능함

 

 

2. EC2 접속(Putty)

 

 - Putty 프로그램을 실행하여 "Connection -> SSH -> Auth -> Credentials" 선택

 - "Browse" 버튼을 눌러 위에서 EC2 생성하며 만든 .ppk 키를 선택함

 

 - 생성된 EC2를 선택하면 하위에 외부에서 접속이 가능한 IP를 찾을 수 있음

※ 변동 IP 이기 때문에 EC2를 껐다 켤때마다 바뀜. 고정으로 하려면 고정IP 할당을 하면 되지만 추가 비용이 발생됨

 - Putty에서 접속할 IP, 서버이름 입력 후 "Save"를 눌러 지금까지 작업한 내용들을 저장함

 - "Open" 버튼을 눌러 서버에 접속함

 

 

 - login as를 입력하라고 나오면 "ubuntu" 라고 입력하면 됨

 

 

3. FTP 접속(FileZilla)

 

 - 접속 할 사이트 입력

 - "새 사이트" 버튼 클릭 -> 프로토콜 변경 -> 서버 IP 입력 -> 접속 "키" .ppk 파일 선택 -> "연결" 버튼 클릭

 

 

 - ubuntu 파일로 접속 되는 것을 알 수 있음

 

 

4. Python 설정

 1) 파이썬 버전 확인 및 명령어 변경

#python 버전 확인
python3 --version
#python 명령이 python3를 가르키도록 함
sudo apt install python-is-python3

#또는 아래의 명령어로도 수행 가능
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10

#명령어 변경 확인
python --version

 

 2) apt 업데이트 및 pip 설치

#apt 업데이트
sudo apt update

#파이썬 pip 설치
sudo apt install -y python3-pip

#pip 버전 확인
pip --version

#혹시 pip가 아니라 pip3로 수행 될경우
sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

 

 3) 파이썬 가상환경

#파이썬 가상환경 설치
sudo apt install python3-venv

#FlastkTest01 이름으로 파이썬 가상환경 구축
python -m venv FlaskTest01

#FlaskTest01 가상환경 생성 확인
#현재 디렉토리에서 ls 명령어를 치면 FlaskTest01 이라는 디렉토리가 생성됨 확인

#가상환경 실행
source FlaskTest01/bin/activate

#가상환경 해제
deactivate

 

 

5. Flask 실행

 1) Flask 설치

#pip를 이용하여 Flask 다운로드
python -m pip install flask

※ 가상환경에서만 설치가 가능함

 

 2) 파이썬 코드

from flask import Flask

app=Flask(__name__)

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

if __name__=='__main__':
 app.run(host='0.0.0.0', port=5000, debug=True)

 

 - Web 브라우저를 통하여 접속 확인

 

 3) 백그라운드 실행

#Putty 연결을 끊더라도 계속 실행 할 수 있도록 함
nohup python -u app.py &

#백그라운드 PID 찾기
ps -ef

#백그라운드 종료
kill -9 "PID 번호"

 

 

Referece:

https://leehah0908.tistory.com/58

 

[EC2] EC2 인스턴스에 pip 설치하기

EC2에 pip 설치하기1. 우선 pip를 설치할 EC2 인스턴스를 생성한 후 SSH로 접속을 해줍니다.2. pip 설치를 해주기 전에 python 세팅을 먼저 해줍니다.3. 아래 명령어를 통해 pip를 설치해 줍니다.sudo apt upd

leehah0908.tistory.com

https://canaryrelease.tistory.com/62

 

[Python]가상환경(venv) 생성, 활성화, 비활성화 및 삭제 방법

회사 업무에서 가끔 파이썬을 사용하게 되는데 가상환경을 생성할 때마다 명령어를 찾기 번거로워 블로그에 정리해둔다. 파이썬에서 가상환경을 사용하는 이유는 1. 가상환경 생성 Python 3.5 버

canaryrelease.tistory.com

https://blog.naver.com/chandong83/223054885101

 

우분투 22.04에서 python3을 python으로 실행하기

우분투 22.04에 기본적으로 python3.10이 설치된 것 같다. 그런데 명령어 사용 시 python이 아닌 python3으...

blog.naver.com

 

반응형
Comments