Docker - Những Kiến Thức Cơ Bản Phần 2 - Viblo
Có thể bạn quan tâm
Giới thiệu
1. Docker là gì?
2. Sự khác biệt giữa Docker và Hypervisors
3. Sự khác biệt giữa Docker Image và Docker Container
4. Làm thế nào để tạo ra một Docker Image bằng Dockerfile
Phần trước: Cơ bản chúng ta đã hiểu về Docker cũng như các khái niệm khi sử dụng Docker, để tiếp tục series 2018 - Cùng nhau học Docker phần này sẽ là những kiến thức về Docker Hub và một số lệnh cũng như so sánh cần thiết trong Docker.
Mục Lục
- Docker Hub là gì? Làm thế nào để tạo một Docker Image trên Docker Hub?
- Các câu lệnh thường dùng để thao tác với docker image?
- Các câu lệnh thường dùng để thao tác với docker container?
- Sự khác biệt giữa câu lệnh docker exec và docker run?
- Sự khác biệt giữa câu lệnh docker run và docker start?
Nội Dung
5. Docker Hub là gì? Làm thế nào để tạo một Docker Image trên Docker Hub?
Docker Hub là gì?

Docker Hub là dịch vụ đăng ký dựa trên đám mây cho phép bạn liên kết đến các kho lưu trữ mã, tạo hình ảnh(images) và kiểm tra chúng, lưu trữ hình ảnh(images) và liên kết đến Docker Cloud để bạn có thể triển khai các hình ảnh(images) tới máy chủ của mình.
Làm thế nào để tạo một Docker Image trên Docker Hub?
- Để sử dụng Docker Hub trước tiên cần phải đăng ký 1 tài khoản: https://hub.docker.com/
- Sau đó tiến hành đăng nhập:

-
Sau khi đăng nhập và vào trang chủ https://hub.docker.com/ thành công. Click vào Create Repository để tạo mới một repository mới (tương tự như github, nếu chưa biết về github tham khảo tại đây: https://viblo.asia/p/mot-vai-cau-hoi-ve-git-GrLZDAgOlk0)
-
Điền các thông tin cần thiết cho repository của bạn:

- Repository tạo xong sẽ được hiển thị như bên dưới:

- Sau khi tạo xong một repository, click vào details của repository. Hãy chú ý mục Docker Pull Command , đó cũng là command để push, cũng như pull images cho repository này.

- Pull repository của mình vừa tạo về, sử dụng lệnh:
- Kiểm tra xem docker của bạn đã có images pull về từ docker hub chưa:
- Tạo thử một Dockerfile và build 1 images (có thể tham khảo phần 1: https://viblo.asia/p/docker-nhung-kien-thuc-co-ban-phan-1-bJzKmM1kK9N)
- Commit lại container của image cần push lên
- Sau khi commit xong container, tiến hành push lại lên repository của mình.
Done!
6. Các câu lệnh thường dùng để thao tác với docker image?
Cú pháp:
$ docker images [OPTIONS] [REPOSITORY[:TAG]]Options:
- --all , -a: Hiển thị tất cả các images (mặc định ẩn các intermediate images)
- --digests: Hiển thị các digests
- --filter , -f: Lọc dựa trên các điều kiện được cung cấp (dangling=(true|false), (label=<key> or label=<key>=<value>), ( before=(<image-name>[:tag]|<image-id>|image@digest)), (since=(<image-name>[:tag]|<image-id>|image@digest)), (reference=(pattern of an image reference)))
- --format:
- --no-trunc:
- --quiet , -q: Chỉ hiển thị số ID của các images
Ví dụ:
- Hiển thị tất cả các images
- Hiển thị tất cả các digests:
- Lọc dựa trên các điều kiện được cung cấp: ví dụ lọc các image đang được running
- Chỉ hiển thị số ID của các images:
7. Các câu lệnh thường dùng để thao tác với docker container?
Cú pháp:
$ docker container COMMANDCommand:
- rename: Đổi tên một container
- restart: Khởi động lại một hoặc nhiều containers
- rm: Loại bỏ một hoặc nhiều containers
- run: Chạy một lênh trong một container mới
- start: Khởi động một hoặc nhiều containers đã bị dừng lại trước đó
- stop: Dừng lại một hoặc nhiều container đang chạy
- top: Display the running processes of a container
- update: Update configuration of one or more containers
- wait: Block until one or more containers stop, then print their exit codes
Tham khảo thêm tại đây: https://docs.docker.com/engine/reference/commandline/container
8. Sự khác biệt giữa câu lệnh docker exec và docker run?
- docker exec: Vận hành container docker hiện có hay đã tồn tại
- docker run: Thao tác đến các images đã tồn tại hoặc có thể truy xuất từ localhost, mỗi lần chạy command sẽ tạo ra một container mới tương ứng
Tóm lại:" nói một cách đơn giản, "docker run" có mục tiêu là các hình ảnh giáp của container và "docker exec" đang nhắm mục tiêu đến các container kết nối trước. Sử dụng các nguồn bên trong image hoặc container có ý nghĩa khác nhau. Khi sử dụng "docker run", một container tạm thời được tạo và dừng lại (không chấm dứt) sau khi lệnh đã kết thúc".
9. Sự khác biệt giữa câu lệnh docker run và docker start?
- docker run: Thao tác đến các images đã tồn tại hoặc có thể truy xuất từ localhost, mỗi lần chạy command sẽ tạo ra một container mới tương ứng
- docker start: Bắt đầu lại container và khởi động cho container chạy cho đến lần xử lý dừng tiếp theo
Lời Kết
Trong phần 2 này cơ bản chúng ta đã hiểu về docker hub (create, push, pull images) cũng như biết thêm các lệnh thường dùng để thao tác docker image, docker container, phân biệt được câu lệnh docker exec, docker run và docker start...Mong được sự góp ý từ mọi người, hãy quan tâm và theo dõi phần sau cũng như series 2018 - Cùng nhau học Docker nhé 


Nguồn:
-
https://www.docker.com/
-
https://hub.docker.com/
-
https://vi.wikipedia.org/wiki/Docker_(phần_mềm)
Từ khóa » Docker Hub Là Gì
-
Tìm Hiểu Về Docker Hub Và Cách Tạo 1 Docker Image - Viblo
-
Docker: Tìm Hiểu Về Docker Hub Là Gì ? - Technology Diver
-
Docker - Hub - Hoclaptrinh
-
Docker Hub Trong Docker
-
DOCKER HUB - - VnPro
-
Docker Hub: Tìm Hiểu Thêm Một Chút Về Công Nghệ Docker | Từ Linux
-
Docker Hub | Lê Vũ Nguyên Dạy Học Lập Trình
-
Phần 9 - Sử Dụng Docker Hub
-
Docker Hub Là Gì? Reviews, Tính Năng, Bảng Giá, So Sánh
-
Docker Hub Là Gì ? - Happy Coding !!!
-
Hướng Dẫn Push, Pull Image Từ Docker Hub - Technical Blog
-
Docker Là Gì? Tìm Hiểu Thêm Kiến Thức Về Docker | TopDev
-
Cách Tạo Kho Lưu Trữ Công Khai / Riêng Tư Trong Docker Hub Và Kết ...
-
Docker Là Gì? Kiến Thức Cơ Bản Về Docker