리눅스 서버에서 Streamlit 웹서비스 백그라운드 실행 및 외부 공유 방법

Sooin Yoon·2025년 6월 25일

목차형 요약
1. 서비스를 계속 켜두는 방법

(1) nohup 명령어 사용
(2) 터미널을 추가로 열어서 사용

  1. nohup 명령어란?
  • 터미널을 닫아도 서비스가 계속 동작
  • 실행 예시:
    nohup poetry run streamlit run streamlit_app.py --server.port=8501 --server.address=0.0.0.0 &
  • 실행 로그는 nohup.out 파일에 저장
  1. 터미널 추가 사용 방법
  • 터미널 하나는 서비스 실행용으로 계속 열어둠
  • 다른 터미널에서 추가 작업 가능
  • 단, 서비스 실행 터미널을 닫으면 서비스도 같이 종료됨
  1. 실행 상태 및 로그 확인

서비스가 정상 동작하는지 웹 브라우저에서 확인
예: http://121.78.147.172:8501
서버에서 로그 실시간 확인
tail -f nohup.out

  1. 서비스 종료 방법
  • 실행 중인 프로세스(PID) 찾기
    - ps aux | grep streamlit 또는 lsof -i :8501
  • 프로세스 종료
    - kill [PID] 또는 pkill -f streamlit
  1. 상대방(동료/상사)에게 공유할 주소
  • http://121.78.147.172:8501
  • 포트번호(:8501) 포함해서 안내
  • 외부에서 접속 시 방화벽, 네트워크 설정 확인 필요

리눅스에서 Streamlit 웹 서비스를 항상 켜두는 법과 공유 방법
Streamlit 같은 웹 서비스를 리눅스 서버에서 항상 켜두고 싶을 때는 nohup 명령어를 자주 사용합니다.
이 명령어를 쓰면 터미널을 꺼도 서비스가 계속 실행되며, 실행 결과는 nohup.out 파일에 저장됩니다.
예시:

nohup poetry run streamlit run streamlit_app.py --server.port=8501 --server.address=0.0.0.0 &

중요 포인트
nohup 사용 시: 터미널 종료와 무관하게 서비스 계속 실행(추천)
터미널 추가 열기: 서비스 터미널을 닫지 않아야 하며, 추가로 다른 작업 가능
로그 확인: tail -f nohup.out
실행 중지: kill [PID] 또는 pkill -f streamlit

0개의 댓글