아래의 모든 내용은 [점프 투 FastAPI] https://wikidocs.net/book/8531 를 참조하여 작성한 글입니다.
개요
새롭게 진행할 프로젝트에서 FastAPI를 통해 개발을 진행해야 하는 일이 발생하여 위 위키를 통해 FastAPI의 기초를 공부해보고자 한다. 필자는 하단의 모든 과정을 맥으로 진행하였으로 참고해주길 바란다.
파이썬 설치 과정은 생략하였다.
1-03 FastAPI 개발 환경 준비하기
하단 명령어를 통해 fastapi를 설치하였다.
pip install fastapi
그 후 각 디렉토리의 경로를 복사하여 user에 위치한 .zshrc 내부에 아래와 같은 문구를 추가하였다.
참고로, .zshrc와 같은 숨김 폴더는 커멘드+shift+. 을 통해 확인할 수 있다.
alias myapi='cd (본인 project dir 경로)/projects/myapi;source (본인 venvs dir 경로)/venvs/myapi/bin/activate'
.zshrc 에 추가한 명령어를 통해 바로 venv로 이동함을 확인할 수 있다.
파이참은 기존에 설치하였으나, 인증이 만료되어 아래 블로그를 참조하여 다시 인증하였다.
https://jayjaystory.tistory.com/16
1-06 Svelte 개발환경 준비하기
false 로 변경한 뒤 터미널을 열고 (맥 단축키: ctrl+`(백틱))
npm run dev를 진행하였다. 그러나 dev script를 찾지 못했다.
npm의 버전 문제인가 싶어 update도 시도하였으나, 여전히 작동하지 않았다.
두번째로 node의 버전 문제일 수 있다는 생각이 들어, 19에서 16으로 다운그레이드 하였다.
brew의 명령어를 사용하였다.
$ node -v
$ brew search node
$ brew unlink node
$ brew install node@16
$ brew link node@16
그러나 brew link 에서 이미 경로가 존재해서 안된다는 경고가 떴다. (unlink를 진행해도 여전히 뜨는 상황) 결국 brew link --overwrite node@16
를 통해 overwrite 하였다. 이후 버전이 제대로 변경된 것을 확인 할 수 있었다.
다시 vscode에서 run 해보니 정상적으로 작동하였다.
1-07 안녕하세요 파이보
07에서는 심각한 문제가 하나 발생했다. uvicorn main:app --reload 명령어 사용시 아키텍쳐 오류 (M1 맥은 arm64이다)가 발생한 것이다. 아무래도 아키텍쳐 문제이다 보니 구글링으로는 자세한 해결법이 잘 나오지 않았다.
그래서 요즘 핫한 chat GPT를 사용하였다.(구린 영어는 무시해주길..) 첫번째로는 이미 실행한 방법을 알려주어서 두번째 방법으로 시도하였으나 안되었고,
세번째에서 pip install fastapi uvicorn 후 arch -arm64 uvicorn main:app --reload 명령어를 통해 해결하였다.
신기한 점은 이미 이전에 스택오버플로우를 통해 arch -arm64 uvicorn main:app --reload를 사용했는데, 이때는 install을 하지 않아서 제대로 되지 않았던 것 같다.
드디어 모든 세팅이 끝났다.
'Backend DEv' 카테고리의 다른 글
[Spring] 소셜 로그인 3편: validate와 reissue (0) | 2023.09.14 |
---|---|
[Spring] 소셜 로그인 2편: 로그인과 로그아웃 (0) | 2023.09.02 |
[Spring] 네이버 지도 길찾기 URL 제공 API (0) | 2023.07.30 |
[Flask] 점프 투 플라스크 01. 환경 세팅하기 (0) | 2023.03.09 |
[점프 투 FastAPI] 02. 마지막 (0) | 2023.02.24 |
댓글