728x90
반응형
728x90
반응형
🙆♂️ 환경설정
0. 구름 IDE
https://ide.goorm.io/my/dashboard
goorm
구름은 클라우드 기술을 이용하여 누구나 코딩을 배우고, 실력을 평가하고, 소프트웨어를 개발할 수 있는 클라우드 소프트웨어 생태계입니다.
goorm.co
깃허브 아이디로 구름 IDE에 로그인 하시면 하나의 컨테이너를 항상 켜둘 수 있습니다.
별다른 설명 할 것 없이 그냥 플러스 버튼을 클릭하며 새 컨테이너를 만들어주고
1. FastAPI를 위한 패키지 설치
Fast API를 위한 패키지를 설치해줍니다.
그리고 추가로 API에서 필요한 라이브러리들을 설치해줍니다. 저 같은 경우에는 크롤링 API이기 때문에 BeuatifulSoup4를 설치해줬습니다.
2. Fast API 코드 작성
from typing import Union
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Union[str, None] = None):
return {"item_id": item_id, "q": q}
저는 위의 코드를 사용하지는 않았지만 예시 코드가 필요하신 분들은 위의 코드를 사용하셔도 됩니다.
이렇게 켤 수 있음
밑에 터미널을 통해서 api 서버 여는 코드를 치면
uvicorn index:app --reload
화면의 우측 아래에 URL로 배포되고 있는 것입니다.
이제 끄면 되겠다 싶지만 사실 그렇지 않습니다. 마지막 제일 중요한 설정을 해야 합니다.
nohup uvicorn index:app --reload > /dev/null
nohup라는 명령어를 통해서 API 서버 실행하는 코드를 백그라운드로 실행 시켜주고
> /dev/null 코드를 통해서 nohup 실행에 따른 다른 파일이 생성되지 않도록 합니다.
그러면 이제 배포에 성공하게 됩니다!
추가로 Fast API에 CORS 문제를 겪고 계시면
https://velog.io/@wlsdud2194/cors
위 게시물을 참고하시면 될 것 같습니다.
728x90
반응형
'웹 개발 > 프로젝트' 카테고리의 다른 글
[웹 크롤링 프로젝트] 05. Fast API 도커 배포 - 1 (FastAPI 시작하기 수정) (1) | 2022.11.25 |
---|---|
[웹 크롤링 프로젝트] 04. AWS EC2 서버 사용하기 (0) | 2022.11.15 |
[웹 크롤링 프로젝트] 03. Fast API 시작하기 (0) | 2022.11.15 |
[웹 크롤링 프로젝트] 03. Node Express 서버 구축 및 DB 연동 (0) | 2022.10.19 |
[웹 크롤링 프로젝트] 02. 웹 크롤링 데이터 MongoDB에 저장 (0) | 2022.09.30 |