2 분 소요

Dashboard 배포 :

마지막으로 Streamlit 으로 구현한 Dashboard 를 누구나 볼 수 있도록 배포해 보겠다.

1. requirements.txt 생성

  • streamlit 을 작업한 가상환경에서 설치한 라이브러리 목록을 파일로 저장한다.
  • 해당 파일을 github 에 업로드하면 대시보드에사용한 라이브러리들을 streamlit share 가 알아서 import 해준다.
  • 하지 않으면 redis-py-cluster 와 같은 모듈이 없다고 에러가 발생하기 때문에 꼭 필요한 단계이다.
pip freeze > requirements.txt

2. github 에 repository 생성 및 로컬과 연동

  • 먼저 github 에 streamlit 대시보드 파일을 저장할 repository 를 생성한다.
  • github repository 와 로컬 폴더를 연동한다.
  • 로컬과 github 를 연동해야 나중에 로컬에서 대시보드 수정 후 git push 했을 때 바로 streamlit share 에도 수정 사항이 반영된다.

3. local 에 파일 업로드

  • github 와 연동된 폴더에 다음과 같이 작업한 파일과 requirements.txt 를 넣어준다.
    • requirements.txt
    • redis_dashboard.py

4. github 에 반영

  • 로컬에 저장한 변경 사항을 github repository 에 push 한다.
git add .
git commit -m "redis dashboard"
git push origin master

5. streamlit share 로그인

  • streamlit share 에 github 로 회원가입 및 로그인을 진행한다.
  • github 계정 권한을 허용한다.

6. app 생성

  • New app 을 클릭한다.

Untitled

  • 아래 페이지에 해당하는 Repository, Branch, Main file path 를 선택해준다.
    • 해당 칸들을 클릭하면 드롭 다운 형식으로 선택할 수 있다.
    • main file path 는 최종적으로 그래프를 보여주는 파일을 선택해야 한다.

Untitled

  • Deploy! 를 클릭하고 기다리면 app 이 생성된다.
    • 만약 error 가 발생했다면 에러 코드를 확인하면서 해결해야 한다.
    • 다음과 같은 경우에 에러가 발생할 수 있다.
      • 코드에서 사용한 모듈이 requirements.txt 에 없을 때
      • requirements.txt 내의 모듈 간 설치 중 충돌이 발생할 때

7. Dashboard 배포 완료

  • 배포 완료가 되면 다음과 같이 대시보드를 확인할 수 있다.
  • 브라우저 상단의 url 로 접속하면 어디에서든 나의 대시보드를 실시간으로 확인할 수 있기 때문에 url 만 공유하면 대시보드를 공유할 수 있다.

Untitled