호스트 볼륨
- 호스트 디렉토리를 컨테이너 디렉토리에 마운트하는 방식
# 호스트의 /opt/html 디렉토리를 Nginx의 웹 루트 디렉토리로 마운트
$ docker run -d \\
--name nginx \\
-v /opt/html:/usr/share/nginx/html \\
nginx
- -d : 백그라운드 모드로 실행
- —name : nginx 라는 이름의 컨테이너
- -v : 호스트 /opt/html 디렉토리를 컨테이너의 /usr/share/nginx/html 디렉토리로 마운트
- nginx : 이미지
볼륨 컨테이너
$ docker run -d \\
--name my-volume \\
-it \\
-v /opt/html:/usr/share/nginx/
html \\
ubuntu:focal
# my-volume 컨테이너의 볼륨을 공유
$ docker run -d \\
--name nginx \\
--volumes-from my-volume \\
nginx
- 볼륨 컨테이너
- -d : 백그라운드 모드로 실행
- —name : my-volume 라는 이름의 컨테이너
- -it : 표준 입출력, 터미널 출력
- -v : 호스트 /opt/html 디렉토리를 컨테이너의 /usr/share/nginx/html 디렉토리로 마운트
- ubuntu:focal : 이미지
- 볼륨 컨테이너를 마운트하는 컨테이너
- -d : 백그라운드 모드로 실행
- —name : nginx 라는 이름의 컨테이너
- -volumes-from : my-volume 이라는 컨테이너 볼륨을 마운트
- nginx : 이미지
도커 볼륨
- 도커에서 자체적으로 관리해주는 volume을 생성하여 컨테이너에 마운트하는 방식
# web-volume 도커 볼륨 생성
$ docker volume create --name db
# 도커의 web-volume 볼륨을 Nginx의 웹 루트 디렉토리로 마운트
$ docker run -d \\
--name fastcampus-mysql \\
-v db:/var/lib/mysql \\
-p 3306:3306 \\
mysql:5.7
- db 라는 이름의 도커 볼륨 생성
- fastcampus-mysql 컨테이너에