Làm quen các câu lệnh trong Docker
1.Docker Hub
Docker Hub là gì?
- Docker Hub là một dịch vụ lưu trữ container images, cho phép người dùng dễ dàng tìm kiếm, kéo (pull), và chia sẻ các Docker images.
- Ví dụ, để kéo một image từ Docker Hub, sử dụng:
docker pull <image-name>
Thực hành
Bây giờ, để kéo image từ Docker Hub về máy nhé bạn sử dụng câu lệnh:
docker pull nghiaphunng18/python-helloworld:2.0
Để kiểm tra đã kéo thành công chưa, bạn sử dụng câu lệnh để kiêm tra các image hiện có trong local docker:
docker images
Nếu đã danh sách các image đã có nghiaphunng18/python-helloworld => Đã chạy đúng.
2.Các câu lệnh với Docker Container
Docker Container là gì?
- Docker Container là một thực thể runtime (chạy thực tế) của Docker Image. Nó giống như một máy ảo nhẹ, chứa ứng dụng và tất cả các thành phần cần thiết để chạy ứng dụng, nhưng tiêu thụ ít tài nguyên hơn. Containers có thể dễ dàng khởi chạy, tạm dừng, hoặc xóa, giúp bạn nhanh chóng triển khai và quản lý ứng dụng.
Thực hành
2.1.Khởi chạy 1 container mới
docker run -d --name <container-name> <image-name>
- -d: Chạy container ở chế độ nền
- -- name <container-name> : Đặt tên cho container
- <image-name> : Tên của image mà bạn muốn dùng để tạo container
2.2.Hiển thị danh sách các container đang chạy
docker ps
2.3.Hiển thị danh sách tất cả các container (bao gồm cả container đã dừng)
docker ps -a
2.4.Dừng container đang chạy
docker stop <container-id | container-name>
2.5.Khởi động lại container
docker restart <container-id | container-name>
2.6.Xóa một container
docker rm <container-id | container-name>
2.7.Kiểm tra logs của container
docker logs <container-id | container-name>
2.8.Kiểm tra logs của container
docker logs <container-id | container-name>
2.9.Truy cập vào một container đang chạy
docker exec -it <container-id | container-name> /bin/bash
Ví dụ:
3.Các câu lệnh với Docker Image
Docker Image là gì?
- Docker Image là một mẫu (template) hoặc một bản sao chỉ đọc chứa các thành phần cần thiết để tạo ra một Docker container. Mỗi image có thể chứa hệ điều hành, phần mềm, thư viện, các file cần thiết, và thậm chí là mã nguồn của ứng dụng. Các image này giúp Docker container hoạt động nhất quán trên các môi trường khác nhau.
Thực hành
3.1.Danh sách các docker image có sẵn trên máy
docker images
3.2.Kéo (download) một Docker image từ Docker Hub về máy
docker pull <image>
3.3.Xây dựng một Docker image từ Dockerfile trong thư mục hiện tại
docker build -t <image-name>:<tag> .
3.4.Xóa một Docker image
docker rmi <image-id | image-name>
3.5.Đánh dấu (tag) một Docker image với tên mới
docker tag <image-id> <repository-name>:<tag>
3.5.Đẩy Docker image lên Docker Hub
docker push <repository-name>:<tag>
4.Các câu lệnh với Docker Volume
Docker Volume là gì?
-
Docker Volume là một cơ chế lưu trữ dữ liệu bền vững (persistent storage) cho phép dữ liệu được lưu giữ bên ngoài vòng đời của container. Khác với hệ thống lưu trữ tạm thời bên trong container, volume tồn tại độc lập và không bị mất dữ liệu khi container bị xóa hoặc khởi động lại.
-
Volume thường được sử dụng để lưu trữ:
- File dữ liệu của database.
- File cấu hình.
- Các dữ liệu cần được giữ lại khi container bị xóa hoặc cập nhật.
Thực hành
Để có thể thực hành dễ hiểu hơn, bạn cần kém image mình có chuẩn bị về máy:
docker pull nghiaphunng18/python-helloworld:2.0
4.1.Tạo volume
docker volume create <tên-volume>
Ví dụ:
4.2.Hiển thị các volume hiện có
docker volume ls
Ví dụ:
4.3.kiểm tra chi tiết về một volume cụ thể
docker volume inspect <tên-volume>
Ví dụ:
4.4.kiểm tra chi tiết về một volume cụ thể
docker volume inspect <tên-volume>
Ví dụ:
4.5.Gắn volume vào container
docker run -v <tên-volume>:<đường-dẫn-trong-container> <tên-image>
Ví dụ:
- -v python-volume:/app/data là cú pháp gắn volume vào thư mục /app/data trong container.
4.6.Thêm dữ liệu vào volume
Ví dụ:
4.7.Kiểm tra dữ liệu sau khi dừng và xóa container
- Ví dụ:
- Thực hiện dừng và xóa container python-hello-v2
- Khởi chạy lại container với volume cũ
- Truy cập vào container và kiểm tra file đã tạo > Như bạn có thể thấy kết quả đã chạy đúng
4.8.Xóa volume
docker volume rm <tên-volume>
Ví dụ: bash docker volume python-hello-volume
Tài Liệu Tham Khảo
- Docker Documentation
- Tài liệu chính thức của Docker, cung cấp thông tin chi tiết về các khái niệm, cách sử dụng, và cấu hình Docker
- https://www.tutorialspoint.com/docker/docker_images.htm
- https://www.tutorialspoint.com/docker/docker_containers.htm
- https://kungfutech.edu.vn/bai-viet/docker/cac-cau-lenh-voi-container
Hãy đón đọc các bài viết tiếp theo trong chuỗi series này, cảm ơn các bạn rất nhiều😘!
All rights reserved