GitHub와 Streamlit을 통한 프로젝트 배포 절차: 친밀한 안내
아래는 GitHub와 Streamlit Cloud를 통해 프로젝트를 배포하는 과정을 하나하나 짚어 나가는 친밀한 절차입니다. 모든 단계를 차근차근 진행하면서, 막히는 부분이 있으면 언제든 토론할 수 있습니다.
1. GitHub에 리포지토리 생성 및 프로젝트 업로드
1-1. GitHub에서 리포지토리 생성
- GitHub에 로그인 후 New Repository 버튼을 클릭합니다.
- 프로젝트 이름과 설명을 작성합니다.
- 공개(Public) 또는 비공개(Private) 옵션을 선택합니다.
- Create Repository를 눌러 리포지토리를 생성합니다.
1-2. 로컬 프로젝트를 GitHub에 푸시
터미널 또는 명령 프롬프트에서 아래 명령어를 순차적으로 입력합니다:
bash# 로컬 프로젝트 폴더로 이동
cd [프로젝트 폴더 경로]
# Git 초기화
git init
# 모든 파일 추가 및 커밋
git add .
git commit -m "Initial commit"
# GitHub 리포지토리와 연결
git branch -M main
git remote add origin https://github.com/your-username/your-repository.git
# GitHub에 프로젝트 푸시
git push -u origin main
2. Streamlit Cloud에서 프로젝트 배포
2-1. Streamlit Cloud에 로그인 및 GitHub 연동
- Streamlit Cloud에 접속해 GitHub 계정과 연동합니다.
- New App 버튼을 클릭합니다.
2-2. 배포할 리포지토리 및 애플리케이션 파일 선택
- GitHub 리포지토리를 선택합니다.
- 메인 애플리케이션 파일(
app.py
)을 지정합니다. - 필요 시 환경 변수와 비밀 키를 설정합니다.
2-3. 앱 배포 실행
- Deploy 버튼을 클릭합니다.
- 배포가 완료되면 애플리케이션 URL이 생성됩니다.
- URL을 통해 웹 애플리케이션에 접속할 수 있습니다.
3. GitHub에 코드 업데이트 및 자동 배포
- 애플리케이션을 수정한 후 아래 명령어로 GitHub에 푸시합니다:
bashgit add .
git commit -m "Update project"
git push origin main
- Streamlit Cloud가 자동으로 최신 버전으로 업데이트합니다.
4. 문제 발생 시 해결 방법
- GitHub 푸시 오류: GitHub에 이미 같은 이름의 브랜치가 있을 경우,
--force
옵션을 사용합니다.bashgit push -u origin main --force
- Streamlit 빌드 실패:
requirements.txt
파일에 누락된 라이브러리가 없는지 확인합니다. - API 키 누락: 환경 변수 설정이 필요한 경우, Streamlit Cloud 대시보드에서 설정합니다.
5. 추가 기능 및 개선점
- Heroku와 같은 다른 배포 플랫폼과 연동하여 다양한 배포 옵션 제공.
- API 호출 시간제한이 있을 경우, 주기적인 데이터 캐싱 구현.
결론
이 절차를 따르며 애플리케이션을 배포하는 과정에서 막히는 부분이 있다면 언제든지 질문해 주세요. 한 걸음씩 진행하면서 GitHub와 Streamlit Cloud의 강력한 배포 기능을 활용해 성공적인 프로젝트를 완성할 수 있습니다.
댓글 쓰기