장고 컨테이너가 장고 앱을 가지고 있습니다. 정적 파일이 생성되어 정적 폴더에 복사됩니다.
컨테이너 폴더 계층 구조 : 내가 고정 표시기 이미지를 구축하기 전에도커 컨테이너에서 호스트로 파일을 노출합니다.
- var
- django
- app
- static
, 난 ./manage.py collectstatic
실행은 너무 정적 파일은 /var/django/static
폴더에 있습니다. 응용 프로그램을 노출하고 정적 파일을 제공하기 위해, 나는 호스트에 nginx 있습니다. 문제는 컨테이너의 정적 폴더와 지정된 폴더 사이의 볼륨을 수행 할 때 컨테이너의 /var/django/static
폴더가 삭제 된 것입니다 (물론 삭제되지 않지만 마운트 된 상태 임). 이것을 극복 할 수있는 방법이 있습니까? 볼륨을 설정할 때와 마찬가지로 현재 파일도 가져 오도록 docker에 지시할까요?
에 의해 외부 (호스트)에 고정 표시기 컨테이너 내부 호스트에 3. 마운트 폴더를 SSHFS를 설치합니다? 그래서 당신이 여기서 무엇을 할 것인가는 django 웹 어플리케이션을 빌드하고 (dockerfile의'ADD' 키워드를 사용하여) 정적 파일을 nginx 이미지로 푸시하는 데 필요한 모든 것을하는 것입니다. –
왜냐하면 우리의 qa/integration/production env가 어떻게 작동하는지 알기 때문입니다. nginx는 호스트에 있으며 도커에서 실행되지 않습니다. –
나는 본다. 따라서 호스트의 컨테이너 파일을 호스트에 마운트하는 방법을 찾고 있습니다. 이는 사람들이 일반적으로 다른 방식으로 수행하기 때문에 상당히 비 재능입니다. 그렇다면 파일에만 관심이있는 컨테이너를 갖는 목적은 무엇입니까? 정적 파일 디렉토리를'ngix'가 파일을 제공 할 디렉토리에 심볼릭 링크하는 것만 큼은 어떨까요? –