inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

도커 쓸 땐 필수! 도커 컴포즈

실습 - 도커 컴포즈로 워드프레스 서버 실행하기

docker-compose.yml에서 db_data가 이해가 되지 않습니다 ㅜㅜ

해결된 질문

52

hhglng

작성한 질문수 8

2

삭제된 글입니다

docker

답변 1

0

너굴

가장 아래에 있는 volumes는 도커 컴포즈가 관리하는 가상 디스크라고 볼 수 있습니다.

volumes:
  db_data: {}

라고 선언하여 db_data라는 가상 디스크를 하나 만들었다고 보시면 됩니다.

두 번째로, mysql 서비스 안에서 volumes를 다음과 같이 설정하여

mysql 컨테이너 내부의 특정 위치와 호스트 컴퓨터의 특정 위치(=타깃 폴더)를 연결할 수 있는데요.

volumes:
 
- {타깃 폴더}:{mysql 컨테이너 내부의 위치}

이 기능을 사용할 때 '타깃 폴더' 대신 우리가 만들었던 db_data 가상 디스크를 써줄 수도 있습니다.

종합하여, 다음과 같이 docker-compose.yml 파일을 선언하면 되겠습니다.

...
mysql:
  ...
  volumes:
    - db_data:/var/lib/mysql  # 아래에서 선언한 db_data 디스크를 사용합니다

...
volumes:
  db_data: {}   # db_data라는 가상 디스크를 만듭니다

답변이 이해되지 않는다면 얼마든지 다시 물어보셔도 됩니다. ^^

0

hhglng

친절한 답변 감사합니다! 가상 디스크를 만드는 이유는 테스트용 인가요? 

0

hhglng

실수로 이 디렉터리가 지워진다거나 소스코드 버전 관리 시스템에 들어가버리면 낭패일 겁니다. 이 디렉터리를 직접 관리하지 말고 도커에 맡겨봅시다. docker-compose.yml 파일을 다음과 같이 수정합니다.


글을 보고 이해했습니다! 

개인실습해설 프론트엔드, 백엔드 데이터베이스 방명록

0

92

2

db 란?

0

72

1

docker run -it -p 8080:80 --rm -v /home/nayuoh/docker-compose/:/usr/share/nginx/html/ nginx

0

100

1

{pwd}

0

84

1

${pwd}

0

82

1

docker 설치 후 첫 실행 시 docker.sock. 에러

0

925

2

도커 컴포즈 그대로 해서 docker-compose up -d 명령어 쳤는데, 프론트엔드랑 몽고디비는 up 상태가 되는데, 백엔드에서 몽고디비 커넥션이 안되네요

0

495

2

ghost 테스트 안됨

1

388

2

docker compose up 에러 질문드립니다~

1

1395

1

Volume 관련 질문 드립니다.

0

336

1

바로 멈춤 문제

0

360

1

볼륨 질문 드립니다.

1

282

1

실행시 바로 멈춤

1

361

1

강의자료 html에 있는 소스코드처럼 어떻게 작성하나요?

1

304

1

docker-compose.yml 파일 문법자료 문의 입니다

1

297

1

소스코드 복사해서 실습시 불편사항

1

276

1

depends_on 설정

1

337

1

docker run명령어는 언제 사용하나요?

1

337

1

docker-compose exec 질문 드립니다.

1

1146

1

volumes db_data 문의2

0

1036

1

구글링을 했는데 해결방안을 모르겠습니다.

1

229

1

안녕하세요!

1

193

1

강의 ppt

1

316

1

docker-compose 명령어 관련 질문입니다.

1

526

1