• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

볼륨마운트가 제대로 수행이 안됩니다.

22.09.02 18:32 작성 조회수 228

0

# volume mount :: docker run -v {host path}:{container path}:{permission ro 읽기전용, rw 읽기 및 쓰기} 
root@ip-10-192-147-31:/var/www># docker run -d -p 8000:80 -v /var/www:/usr/share/nginx/html:ro nginx  
a028accb69bf2cfc604a36f76e3aa85ee98d2247869c909519026bae7a5a1863

# 마운트 시켜놓은 /var/www 경로에 아무것도 없어서 403 에러가 발생함
root@ip-10-192-147-31:/var/www># curl localhost:8000
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.23.1</center>
</body>
</html>
* Connection #0 to host localhost left intact

# index.html 파일 생성
root@ip-10-192-147-31:/var/www># echo test1234 > index.html

root@ip-10-192-147-31:/root># ls -al /var/www/
합계 4
drwxr-x---  2 root root  24  9월  2 18:04 .
drwxr-xr-x 21 root root 293  9월  2 17:47 ..
-rwxrwxrwx  1 root root   9  9월  2 18:04 index.html

안녕하세요~ 호스트의 볼륨을 컨테이너에 마운트해주는 실습중 궁금한 점이 생겼습니다.

여기까지 해주고, localhost:8000 으로 접속하면 test1234 가 정상적으로 떠야할 거서 같은데요

# ...? 왜 안보이지
root@ip-10-192-147-31:/var/www># curl -v localhost:8000
*   Trying 127.0.0.1:8000...
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET / HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.79.1
> Accept: */*
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 403 Forbidden
< Server: nginx/1.23.1
< Date: Fri, 02 Sep 2022 09:04:36 GMT
< Content-Type: text/html
< Content-Length: 153
< Connection: keep-alive
< 
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.23.1</center>
</body>
</html>
* Connection #0 to host localhost left intact

# 컨테이너 안에 들어가면, 볼륨 마운트는 잘 되어 있음
root@b7819c1de150:/usr/share/nginx/html# cat index.html 
test1234

뜨지 않습니다 ㅠㅠ 원인이 무엇일까요?

답변 3

·

답변을 작성해보세요.

0

LeMY님의 프로필

LeMY

2022.09.06

403 뜨니깐 권한 문제 같은데 수행하신 명령어에는 특별히 문제가 없어보입니다. 그렇다면 /var/www 폴더에 docker daemon이 접근 할 수 없을 것 같은 의심이 듭니다. 강사님 의견처럼 경로상의 권한 문제로 예상됩니다.

조금 더 심플하게 확인하려면 /var/www 경로에 권한을 777로 주시고 테스트 해보시면 어떨까 싶습니다

0

gasbugs님의 프로필

gasbugs

2022.09.03

 

안녕하세요 강사 최일선입니다.

저는 실행해보니 정상 동작 합니다. 다른 문제가 아닐까 생각합니다. ㅠ

아레와 같이 실행하셔서 다시 한번 테스트 해보시길 요청드립니다.

mkdir www
docker run -d -p 8000:80 -v $(pwd)/www:/usr/share/nginx/html:ro nginx
cd www
echo test1234 > index.html

아래와 같이 내용이 잘 나타납니다.

$ curl 127.0.0.1:8000
test1234

 

감사합니다.

 

0

고미정님의 프로필

고미정

질문자

2022.09.02

root@ip-10-192-147-31:/root># uname -a
Linux ip-10-192-147-31 4.14.276-211.499.amzn2.x86_64 #1 SMP Wed Apr 27 21:08:48 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

실습환경은 Amazon linux 2 입니다 ㅠㅅㅠ