우여곡절 끝에 FastAPI를 배포할 수 있는 리소스가 생겼다.
클라우드 작업을 진행하기 전에 Python API 서버 띄워보기에서 작성한 코드를 Github에 올려보자.
만약 코드를 직접 작성하지 않고 배포만 진행하고 싶다면, 본 게시물을 통해 작성된 repository의 템플릿 기능을 통해 내 리포지토리에 동일한 코드를 생성할 수 있다.
※ Github template 사용법
먼저 깃허브에 로그인하고 repository를 생성해주자.
Repository name에 이름을 적어주고 Create repository를 클릭하자.
이름은 fastapi-app
으로 했다.
정상적으로 생성이 되면 다음과 같은 화면을 만날 수 있을 것이다.
터미널을 켜서 Python API 서버 띄워보기에서 작업했던 디렉토리로 이동하자.
만약 별도의 디렉토리를 만들지 않고 작업했다면 프로젝트 이름과 동일한 디렉토리를 만들고 그 안에 파일들을 옮겨주자.
디렉토리의 이름이 프로젝트 이름과 동일하지 않아도 문제는 없지만 편의상 동일하게 설정해주자.
$ cd /d/Git/fastapi-app
$ ls
Dockerfile main.py requirements.txt
Repository 화면에서 위와 같은 부분을 만날 수 있는데 이를 응용(?)해서 진행하면 된다.
README.md
는 지금은 딱히 필요없으니 생성을 건너뛰도록 하자.
$ git init
$ git add .
$ git commit -m 'FastAPI example code'
$ git branch -M main
$ git remote add origin https://github.com/{user name}/{repository name}.git
$ git push -u origin main
정상적으로 업로드 됐다면 아래와 같이 로그가 출력될 것이다.
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (4/4), done.
Writing objects: 100% (5/5), 622 bytes | 622.00 KiB/s, done.
Total 5 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/soohyunme/fastapi-app.git
* [new branch] main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.
다시 브라우저로 돌아가서 repository를 새로고침해보자.
아래와 같이 정상적으로 파일들이 업로드된 것을 확인할 수 있을 것이다.
FastAPI template repository에 접속하여 Star
버튼을 누른 뒤Use this template
> Create a new repository
를 클릭한다.
Repository name
에 원하는 이름을 입력해주고 Crate repository
를 클릭한다.
내가 작성한 repository name으로 새로운 repository가 생성된 것을 확인할 수 있다.
이후 git clone
을 통해 코드를 로컬로 다운받은 뒤, 원하는 작업을 진행하면 된다.
깃허브에 코드도 업로드 했으니 이제 FastAPI Application을 클라우드에 배포해보자.