- Python 3.8 이상
- Docker
- MySQL
- Firebase 설정 파일
필요한 Python 라이브러리는 requirements.txt 파일에 명시되어 있습니다.
-
Docker 및 MySQL
- MySQL 데이터베이스를 Docker를 통해 설정해야 합니다. 데이터베이스 설정 방법은 아래 설치 및 실행 방법 섹션에 포함되어 있습니다.
-
Firebase
- Firebase 프로젝트를 설정하고 필요한 인증 파일(
firebase.json)을 프로젝트 디렉토리에 추가해야 합니다.
- Firebase 프로젝트를 설정하고 필요한 인증 파일(
git clone <your-repository-url>
cd <your-repository-directory>Windows
python -m venv venv
venv\Scripts\activatemacOS / Linux
python3 -m venv venv
source venv/bin/activatepip install -r requirements.txt-
Docker 설치
- Docker가 설치되어 있지 않은 경우, Docker 공식 웹사이트에서 Docker를 설치합니다.
-
MySQL Docker 컨테이너 실행
docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=rootpassword -e MYSQL_DATABASE=yourdatabase -e MYSQL_USER=user -e MYSQL_PASSWORD=password -p 3306:3306 -d mysql:latest
MYSQL_ROOT_PASSWORD: MySQL 루트 사용자 비밀번호MYSQL_DATABASE: 생성할 데이터베이스 이름MYSQL_USER: 생성할 데이터베이스 사용자 이름MYSQL_PASSWORD: 데이터베이스 사용자 비밀번호
-
데이터베이스 마이그레이션 필요한 경우, 데이터베이스 마이그레이션을 수행하여 데이터베이스 스키마를 설정합니다.
-
Firebase 프로젝트 생성 Firebase 콘솔에서 프로젝트를 생성합니다.
-
Firebase 설정 파일 추가 Firebase 프로젝트 설정에서
firebase.json파일을 다운로드하여 프로젝트 디렉토리에 추가합니다. -
Firebase 설정 파일 경로 지정
firebase.py파일에서 Firebase 설정 파일을 불러오는 경로를 지정해야 합니다. 예를 들어, 다음과 같이 설정할 수 있습니다:import firebase_admin from firebase_admin import credentials # Firebase 설정 파일 경로 cred = credentials.Certificate('path/to/firebase.json') firebase_admin.initialize_app(cred)
path/to/firebase.json부분을 실제firebase.json파일의 경로로 변경해 주세요.
-
PyCharm에서 프로젝트 열기
- PyCharm을 실행하고
Open을 선택한 후, 클론한 프로젝트 디렉토리를 엽니다.
- PyCharm을 실행하고
-
가상환경 설정
- PyCharm에서
File>Settings>Project: <Your Project Name>>Python Interpreter로 이동합니다. Add Interpreter를 클릭하고Existing environment를 선택한 후, 생성한 가상환경의python.exe파일을 지정합니다. (예:venv/Scripts/python.exe)
- PyCharm에서
-
환경 변수 설정
Run>Edit Configurations로 이동합니다.Environment Variables를 클릭하고 필요한 환경 변수를 추가합니다. 예를 들어, Firebase 설정 파일의 경로를 설정할 수 있습니다:FIREBASE_CREDENTIALS=path/to/firebase.json
-
Docker MySQL 컨테이너 실행
- 터미널에서 MySQL Docker 컨테이너를 실행합니다:
docker start mysql-container
- 터미널에서 MySQL Docker 컨테이너를 실행합니다:
-
프로젝트 실행
main.py파일을 마우스 오른쪽 버튼으로 클릭하고Run 'main'을 선택하여 프로젝트를 실행합니다.
각 모듈의 기능에 따라 실행 방법이 다를 수 있습니다. 메인 모듈을 실행하는 방법은 다음과 같습니다:
python main.pymain.py: 프로젝트의 엔트리 포인트post.py: 게시물 관련 기능 모듈disease.py: 질병 관련 기능 모듈user.py: 사용자 관련 기능 모듈repository.py: 데이터베이스 리포지토리 모듈orm.py: ORM(객체 관계 매핑) 모듈connection.py: 데이터베이스 연결 모듈response.py: 응답 처리 모듈request.py: 요청 처리 모듈firebase.py: Firebase 연동 모듈notification.py: 알림 관련 기능 모듈util.py: 유틸리티 함수 모듈security.py: 보안 관련 기능 모듈