1. Django / gunicorn은 static files를 서빙하지 못한다.
- 그 이유를 알기 위해서는 STATIC이 뭔지 알아야 한다.
2. WHAT IS STATIC ?
- 웹 서버 초기에는 단순한 정적 html 파일들을 서빙하는 것이었다.
- 그런 파일들이 많아짐에 따라 컨텐츠를 동적으로 서빙하도록 변경되었다.
- 나중에 이러한 동적 컨텐츠들을 서버에서 제공하는 것이 어려워지자
정적 컨텐츠와 동적 컨텐츠를 분리하기 시작했다.
자 그럼 다시 돌아와서, 왜 Django와 gunicorn은 static 파일을 서빙하지 못하는가?
- Django와 gunicorn의 조합은 동적 컨텐츠를 제공하기 위한 것이다.
즉, static 컨텐츠를 제공하는 서버 (Nginx)와
동적 컨텐츠를 제공하는 Application (Django/gunicorn)이 존재해야 하는 것이다.
3. 그럼 static files를 어떻게 제공해야하는가
- Django 컨테이너로부터 정적 컨텐츠들을 모은다.
- 정적 컨텐츠들을 nginx 컨테이너와 동기화 한다. (synchronize).