+2

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ụ: image.png

4.2.Hiển thị các volume hiện có

docker volume ls

Ví dụ: image.png

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ụ: image.png

4.5.Gắn volume vào container

docker run -v <tên-volume>:<đường-dẫn-trong-container> <tên-image>

Ví dụ: image.png

  • -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ụ: image.png

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 image.png
    • Khởi chạy lại container với volume cũ image.png
    • Truy cập vào container và kiểm tra file đã tạo image.png > 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

  1. 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
  2. https://www.tutorialspoint.com/docker/docker_images.htm
  3. https://www.tutorialspoint.com/docker/docker_containers.htm
  4. 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

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí