Chia sẻ dữ liệu giữa Docker Host và Container

docker-image Chia sẻ dữ liệu giữa Docker Host và Container

Giới thiệu

Việc chia sẻ dữ liệu giữa Docker Host và Container là một trong những tính năng hữu ích, cho phép bạn đồng bộ hóa và quản lý thông tin một cách hiệu quả trong môi trường Docker. Nhờ đó, dữ liệu có thể dễ dàng được cập nhật, lưu trữ và sử dụng giữa hệ thống chủ và các container. Trong bài viết này, chúng ta sẽ khám phá các phương pháp chia sẻ dữ liệu phổ biến như VolumeBind Mounts, cùng các bước thực hiện chi tiết để bạn áp dụng vào công việc một cách thuận tiện.

Container – ánh xạ thư mục máy Host:

docker run -it -v /home/sitesdata:/home/data ubuntu

Lúc này, dữ liệu trên thư mục /home/sitesdata/ của máy Host thì trong container có thể truy cập, cập nhật sửa đổi … thông qua đường dẫn /home/data

Chia sẻ dữ liệu giữa các Container :

Có container với id hoặc name là container_first, trong đó nó có mount thư mục Host vào. Giờ chạy, tạo container khác cũng nhận thư mục chia sẻ dữ liệu như container_first

docker run -it --volumes-from container_first ubuntu

Bạn đã tạo ra một Container nhận thư mục chia sẻ như container có ID hoặc tên là container_first tạo trước đó.

Quản lý các ổ đĩa với docker volume

Liệt kê danh sách các ổ đĩa:

docker volume ls

Tạo một ổ đĩa:

docker volume create name_volume

Xem thông tin chi tiết về đĩa:

docker volume inspect name_volume

Xóa một ổ đĩa:

docker volume rm name_volume

Mount một ổ đĩa vào container (–mount)

# Tạo ổ đĩa có tên firstdisk
docker volume create firstdisk

Mount ổ đĩa vào container, container truy cập tại /home/firstdisk

docker run -it --mount source=firstdisk,target=/home/firstdisk  ubuntu

Gán ổ đĩa vào container khi tạo container (-v)

docker volume create --opt device=path_in_host --opt type=none --opt o=bind  volumename

Xóa tất cả các ổ đĩa không được sử dụng bởi container nào:

docker volume prune

Chia sẻ dữ liệu giữa Docker Host và Container là một kỹ thuật quan trọng, giúp tối ưu hóa quá trình làm việc với Docker. Bằng cách sử dụng Volume hoặc Bind Mounts, bạn có thể quản lý dữ liệu một cách linh hoạt và hiệu quả. Hãy áp dụng ngay các kiến thức này vào dự án của bạn để tận dụng tối đa sức mạnh của Docker trong việc phát triển và triển khai ứng dụng!

I am gaining experience and developing my skills in the field of information technology. My focus areas include basic network administration, troubleshooting, and supporting IT infrastructure. I am keen on learning and growing in various aspects of IT, from system setup and maintenance to exploring new technologies and methodologies.

Post Comment