• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

Docker를 통해 실행하면 웹에 이미지가 표시가 안됩니다.

20.02.18 23:58 작성 조회수 127

1

Docker를 통해 웹을 실행하면 HTML파일에 걸어두었던 <img> 태그가 웹에선 표시가 안됩니다.(docker를 이용하기 전까지는 잘 표시 됬었습니다.)

Jinja 문법때문에 img 태그는 <img src="{{url_for('static',  filename= '이미지.png')}}"> 이렇게 작성하였고,

이미지 파일들은 main 폴더 내에 static 폴더를 만들어 저장했습니다.

<a href="{{url_for('board.lists')}}"></a> 와 같이 링크는 docker를 통해서도 잘 먹힙니다.

portainer를 통해 myweb의 로그파일을 살펴보면 

[error] 11#11: *6 open() "/app/static/Right.png" failed (2: No such file or directory)

이런식으로 파일 또는 폴더가 없다고 나옵니다...

강의 덕분에 지금까지 여러가지를 응용해서 구현할 수 있었습니다. 좋은 강의 제공해 주셔서 감사합니다!!

답변 2

·

답변을 작성해보세요.

1

로그파일의 내용으로 미루어보면 /app/static/이미지.png 이렇게 접근을 하였고 해당 폴더에 이미지를 찾지 못한다는 결론을 낼 수 있습니다. 아마도... 추측하건데 app 폴더가 최상위 폴더이고 그 하위에 main 폴더가 존재하는거 같습니다. 그런데 말씀하셨던 내용에서는 main 폴더내에 static 폴더를 접근하셨다고 한걸로 봐서 static 폴더의 경로가 main 폴더 밖에 있어야 하는거 아닌가 하는 의심이 듭니다. 

위의 내용대로 코드를 수정하셔서 테스트 해보시고 결과를 확인해보셔야 할듯합니다. ^^

0

dudqls3986님의 프로필

dudqls3986

질문자

2020.02.19

빠른 답변 감사합니다!  말씀해주신 방법으로 했더니 해결되었습니다

app폴더가  ls명령을 했을데 전혀잡히질 않아 의심도 안하고 있었습니다..