Streamlit은 빠르게 웹 애플리케이션을 개발하고 배포할 수 있는 유용한 도구입니다. 이 글에서는 VS Code로 Remote SSH를 사용하여 워크스테이션에 접속해서 개발을 하고 있는 제 환경을 예로 들어 해결 방법을 알려드립니다.
Streamlit은 워크스테이션 로컬 네트워크 기준으로 작동 되니, VS Code에서 접속한 Remote 환경에서는 당연히 접속이 안될 것입니다. 이 문제를 해결하기 위해, 포트포워딩과 방화벽 설정을 변경하여 외부에서도 애플리케이션에 접근할 수 있도록 설정해보겠습니다.
1. 포트포워딩 설정하기
포트포워딩은 라우터가 외부 요청을 내부 네트워크의 특정 IP와 포트로 전달하는 기능입니다.
대부분의 라우터는 관리자 페이지에서 이 설정을 제공합니다. 예를 들어, IPTime 라우터에서는 192.168.1.1 또는 192.168.0.1 주소를 통해 관리자 페이지에 접속하여 설정할 수 있습니다.
2. 방화벽 설정 변경하기
우분투에서는 ufw 명령을 사용하여 방화벽 설정을 확인하고 변경할 수 있습니다. 포트포워딩 설정에서 사용한 포트를 방화벽에서도 허용해주어야 합니다. 예를 들어, 5000번 포트를 사용한다면 sudo ufw allow 5000 명령을 통해 해당 포트를 허용하도록 설정해야 합니다.
3. Streamlit 앱에 포트 옵션 추가하기
Streamlit에서 앱을 실행할 때 --server.port 옵션을 추가하여 앱이 원하는 포트에서 실행되도록 지정할 수 있습니다. 예를 들어, 5000번 포트에서 앱을 실행하려면 streamlit run first_app.py --server.port=5000 명령을 사용하면 됩니다.
축하합니다. 이제 외부에서도 Streamlit 앱에 접근할 수 있게 되었습니다. 이러한 설정을 통해 원격 개발 환경에서도 애플리케이션을 테스트하고 공유하는 것이 가능해졌습니다.
이상입니다.
감사합니다.
'개발 이야기 > 웹 개발 배우기' 카테고리의 다른 글
[Streamlit] OSError: [Errno 24] inotify instance limit reached 오류 해결 방법_걱정 노노 (0) | 2023.07.28 |
---|---|
[Flask] 파이썬 코드를 웹페이지에 띄워보자! 사용자 ID 체크 웹페이지 만들기 (1) | 2022.08.10 |
모바일 앱 기획이 처음이라면 꼭 봐야되는 글_사용자 기반의 UI/UX (2) | 2021.05.14 |
Firebase Hosting 해도 이상한 화면만 나올 때 (4) | 2021.03.30 |
따라하며 만드는 웹사이트 E03-2 : 댓글 등록 시스템 (0) | 2021.03.26 |
댓글