Issue

streamlit 으로 간단히 데모 서비스를 만들던 중에 파일 업로더가 말썽이었습니다. 에러는 다음과 같았습니다.



문제는 로컬에서 테스트할 때는 잘 되던게 쿠버네티스에 올려서 테스트하면 안되는 것이었습니다.


Solution

해결법은 레퍼런스 사이트에서 나온대로 “–server.enableCORS=false –server.enableXsrfProtection=false” 를 streamlit 구동 시 같이 해주는 것입니다.

streamlit run main.py --server.enableCORS=false --server.enableXsrfProtection=false


Why

단순히 로컬이냐 아니냐의 문제보다는 방화벽 이슈였습니다. 제가 올리던 곳이 회사의 사내망이라서 방화벽 이슈가 있었습니다. 실제로 공개망에서 올렸을 때는 문제없이 구동되었습니다.

추가로 streamlit으로 실제 서비스를 하려고 할 때는 위와 같은 방식이 아니라 보안팀과 이를 논의하는 것이 어떨까 싶습니다.



References