🐍 Python

Streamlit 배포 가이드

itstory(Booho) 2025. 2. 4. 10:26
728x90
 

Streamlit, Python, 데이터 시각화, 머신러닝, 데이터 애플리케이션, 웹 배포, GitHub, 클라우드 배포, requirements.txt, 데이터 과학

1. Streamlit 소개 및 시작하기

Streamlit은 데이터 과학자와 AI/ML 엔지니어가 간단한 코드 몇 줄만으로 대화형 데이터 애플리케이션을 만들고 공유할 수 있도록 지원하는 오픈 소스 Python 프레임워크입니다. 공식 웹사이트에서 더 많은 정보를 확인할 수 있습니다.

Streamlit 공식 웹사이트

 

Streamlit • A faster way to build and share data apps

Streamlit is an open-source Python framework for data scientists and AI/ML engineers to deliver interactive data apps – in only a few lines of code.

streamlit.io

1.1 회원가입 및 준비

Streamlit을 사용하려면 먼저 공식 웹사이트에서 회원가입을 진행해야 합니다. 계정을 생성하면 Streamlit Cloud에서 애플리케이션을 배포할 준비가 완료됩니다.

 


2. Streamlit 배포 방법

Streamlit 애플리케이션은 GitHub와 연동하여 배포할 수 있으며, 주로 다음 세 가지 방식으로 개발된 프로젝트를 배포할 수 있습니다.

 



2.1 배포 준비 과정

  1. Streamlit 애플리케이션 코드를 준비합니다.
  2. 프로젝트를 GitHub에 업로드합니다.
  3. Streamlit Cloud에서 해당 GitHub 저장소를 선택하여 배포를 진행합니다.



2.2 Streamlit Cloud에서 배포하기

  1. GitHub 연동: Streamlit Cloud에서 GitHub 저장소를 선택합니다.
  2. 세이브(Save) 및 배포(Deploy) 클릭: 화면이 바뀌면서 배포가 진행됩니다.
  3. 배포 완료 후 URL 확인: 배포가 완료되면 애플리케이션이 실행되는 URL이 제공됩니다.





728x90

3. 배포 과정에서 발생할 수 있는 문제 해결

3.1 모듈이 설치되지 않았다는 경고

배포 후 "모듈이 설치되지 않았다"는 오류가 발생할 수 있습니다. 이럴 경우 다음과 같이 해결할 수 있습니다.

  1. 프로젝트 폴더에서 설치된 라이브러리 확인:
    • 프로젝트에서 사용한 라이브러리가 requirements.txt에 모두 포함되어 있는지 확인합니다.
  2. 라이브러리 목록 정리 및 추가:
    • requirements.txt 파일은 Python 패키지 목록을 작성하는 표준 파일이며, Streamlit뿐만 아니라 Hugging Face 등의 패키지 배포에도 사용됩니다.
    • 프로젝트에서 사용한 모든 라이브러리를 requirements.txt 파일에 추가합니다.
  3. 라이브러리 파일 예시 (requirements.txt)  아래 이미지 참고.
  4. 파일 수정 후 GitHub에 푸시(Push):
    • requirements.txt 파일을 수정한 후 GitHub에 커밋하고 푸시합니다.
  5. 다시 배포 실행:
    • Streamlit Cloud에서 다시 배포를 진행하면 오류가 해결될 것입니다.




4. 배포 완료 및 애플리케이션 공유



4.1 배포 후 화면 변화

배포가 완료되면 애플리케이션이 실행되며, 화면이 자동으로 업데이트됩니다. 배포 과정에서 다음과 같은 화면 변화가 발생할 수 있습니다.

  • 빨간 화면에서 로딩 이모티콘이 돌면서 애플리케이션이 구동됩니다.
  • 배포가 완료되면 Streamlit 앱 URL이 제공됩니다.

4.2 배포된 앱 공유하기

배포된 애플리케이션은 고유한 URL을 가지므로, 해당 링크를 주변 친구들에게 공유하여 자랑할 수 있습니다.

예제: 배포된 Streamlit 앱

 

 

 

 


5. 결론

Streamlit을 사용하면 간편하게 대화형 데이터 애플리케이션을 만들고 배포할 수 있습니다.

GitHub과 연동하여 requirements.txt 파일을 활용하면 더욱 원활한 배포가 가능합니다.

직접 만든 애플리케이션을 배포하고, 주변 사람들에게 공유해보세요!

728x90