Skip to content
An`s Weblog
Go back

Using Bind Mounts

Khái niệm:

So sánh Volume vs Bind Mount

Tiêu chíVolumeBind Mount
Vị trí lưu trữ/var/lib/docker/volumes/Vị trí bất kỳ trên máy host
Tạo bởi DockerCó thể quản lý qua docker volumeKhông quản lý qua docker volume
Dùng choDữ liệu app, databaseGắn file cấu hình, code dev, v.v.
Ưu điểmAn toàn, tự quản lýLinh hoạt, trực tiếp

Cách tạo Bind Mount

Cách 1: Dùng -mount (cách mới)

docker container run -d \
  --name nginx-bind-mount1 \
  --mount type=bind,source=$(pwd)/target,destination=/app \
  nginx

kiểm tra

docker container inspect nginx-bind-mount1

Cách 2: Dùng v hoặc -volume (cách cũ)

docker container run -d \
  --name nginx-bind-mount2 \
  -v $(pwd)/target2:/app \
  nginx

Thư mục target2 chưa tồn tại → Docker sẽ tự tạo.

Thực hành tạo và kiểm tra Bind Mount

Từ phía host:

touch target/file1.txt

Từ phía container:

docker exec -it nginx-bind-mount1 /bin/bash
cd /app
touch file2.txt

→ Trên host sẽ thấy target/file2.txt xuất hiện.

Gắn file cấu hình với Bind Mount

docker run -d \
  --name nginx-bind-mount3 \
  -v $(pwd)/nginx/nginx.conf:/etc/nginx/nginx.conf \
  nginx

Use case phổ biến: chỉnh sửa nginx.conf từ máy host → chỉ cần restart container để áp dụng thay đổi, không cần rebuild image.


Tổng kết

LệnhMục đích
--mount type=bind,source=...,target=...Gắn thư mục hoặc file vào container
-v /path/on/host:/path/in/containerGắn bind mount theo cách ngắn gọn
docker inspect <container>Kiểm tra bind mount
docker exec -it <container> bashTruy cập container kiểm tra nội dung

Khi nào dùng Bind Mount?


Share this post:

Previous Post
Using Volumes for Persistent Storage
Next Post
Volume Commands