Volume trong Docker như một ổ đĩa ảo được dùng để chứa và chia sẻ dữ liệu giữa các container hoặc giữa container với host.

Có hai loại volume chính: Volume giữa host và container, Volume giữa các container.

Chia sẻ dữ liệu giữa host và container

  1. Tạo ra thư mục trên host : mkdir /var/host_data
  2. Khởi tạo một container và chỉ ra volume được gắn: docker run -ti -v /var/host_data/ :container_data ubuntu bash

Ta có thể kiểm tra bằng việc tạo ra dữ liệu trên host và kiểm tra ở container hoặc ngược lại.

Chia sẻ dữ liệu giữa container với nhau

có thêm tùy chọn volumes-from, dữ liệu được chia sẻ chỉ tồn tại cho tới khi các container đều thoát.

tạo một container volume chia sẻ thư mục share

tạo volume trên container mà không chia sẻ với host, lệnh trên sẽ tạo một folder share chạy bash trên container.

ta thêm dữ liệu vào folder /shrare/

từ một terminal khác, ta tạo thêm một container khác

ta thấy dữ liệu ở container thứ hai có dùng dữ liệu folder /share của container thứ nhất.

Một số bài viết liên quan: