livflow project 24일차 - 정적파일 오류

주영광·2024년 12월 19일
0

livflowproject

목록 보기
26/30

무슨 프로젝트가 오류밖에 안나온다.

한 서버에 2개를 배포하려니까 더 문제가 되는거같다.

하나하나 해결하기 위해 우선 swagger가 안들어가지는 문제를 해결하려고한다.

백엔드 주소로 들어갓는데

/swagger에 접속을 하니 정적파일이 안뜬다.

/admin에 들어가니 거기도 정적파일이 안뜬다.

/portainer에 들어가니 이건 외부 프로그램이라 그런지 잘뜬다.

그렇다면 어디 정적파일이 문제인거같은데..

swagger/	200	document	swagger	2.8 kB	13밀리초
swagger	200	document / 리디렉션	기타	(디스크 캐시)	대기 중
swagger-ui.css	404	stylesheet	swagger/:18	155 B	11밀리초
swagger-ui-bundle.js	404	script	swagger/:41	155 B	11밀리초
swagger-ui-standalone-preset.js	404	script	swagger/:42	155 B	15밀리초
insQ.min.js	404	script	swagger/:43	155 B	15밀리초
immutable.min.js	404	script	swagger/:44	155 B	15밀리초
swagger-ui-init.js	404	script	swagger/:45	155 B	23밀리초
contentscript.js	200	script	inject.js:82	4.9 kB	10밀리초
style.css	404	stylesheet	swagger/:17	155 B	13밀리초
contentscript.js	200	script	inject.js:82	4.8 kB	9밀리초

이런 문제가 보였는데

딱봐도 정적파일이 어디 있거나 없거나 하는 상황에 사이트에 접속하면 이 정적파일로 안내가 안되는 듯 했다.

그렇다면 확인할 문제는 몇개 있다.

정적파일은 있는가?

정적파일은 어디에 있는가?

정적파일이 잘 마운트 되고 있는가?

이렇게 확인을 하면 될 것 같았다.

정적파일은 있는가?

joo@liv:~$ docker exec -it liv_pro ls /app/staticfiles/drf-yasg
README		  insQ.js      redoc-init.js  swagger-ui-dist
immutable.js	  insQ.min.js  redoc-old      swagger-ui-init.js
immutable.min.js  redoc        style.css

있다. 우선 app에는 있다.

정적파일은 어디에 있는가?

위치를 보면 app/staticfiles에 있다. collectstatic이 잘된거같다.

정적파일은 잘 마운트 되고 있는가?

이 부분을 확인하려고 어떻게 할지 고민하다가 gamebox에서 파일을 마운트해서 배포하단걸 기억하고

nginx에 파일이 있는지 확인해보았다.

joo@livdocker exec -it ng01 ls /app/staticfiles/drf-yasgyasg
ls: /app/staticfiles/drf-yasg: No such file or directory

파일이 없다

맙소사

그러면 잘 컨테이너화 되서 nginx에 저 파일로 마운트를 시도했으나 그게 실패한거같다/

마운트 방법은?

당연히 docker compose로 가보자.

  - ./nginx.conf:/etc/nginx/nginx.conf
  - /etc/letsencrypt:/etc/letsencrypt
  - ./certbot:/var/www/certbot  # 인증서 발급을 위한 볼륨 추가
  - static_volume:/app/static
  - media_volume:/app/media

보면 static 파일로 마운트가 되고 있었다.

   - ./pyproject.toml:/app/pyproject.toml:ro
  - ./poetry.lock:/app/poetry.lock:ro
  - ./django:/app/django
  - /home/joo/back-end-coffee/django/logs:/home/joo/back-end-coffee/django/logs 
  - static_volume:/app/django/static
  - media_volume:/app/django/media

web에서도 보면 장고 스태틱 파일로 마운트 중이다.

이부분이 debug true일땐 문제가 없었지만 false일때 문제가 된 부분인듯하다.

이부분을 전부 staticfile로 수정해주니 문제가 해결되었다.

profile
오직 실력만이 나를 증명한다.

0개의 댓글