Hướng dẫn khắc phục lỗ hổng bảo mật CVE-2019-11477 trên Cloud365
Hướng dẫn khắc phục lỗ hổng bảo mật CVE-2019-11477 trên Cloud365
Nơi chứa các tài liệu tham khảo của dịch vụ Cloud365.
Ở các phần trước mình đã giới thiệu về các lệnh cơ bản để thao tác với Container. Ở phần này mình sẽ giới thiệu một số lệnh cơ bản thao tác với Image.
Trong Docker, Image dùng để chạy Container. Các bạn có thể tưởng tượng Image giống như file GHOST khi cài Windows và Container chính là Windows được cài hoàn chỉnh từ file GHOST đó.
Giống như file GHOST, bản thân mỗi image nên được đóng gói một số thư viện nhất định, vừa đủ để khởi tạo container. Hoặc đóng sẵn thêm một số phần mềm có sẵn tùy vào mục đích sử dụng của người dùng.
Quá trình build một Image mình đã giới thiệu trong phần 4 của serie này.
Cũng giống như bài viết trước. Để thực hiện một thao tác đối với Image chúng ta cũng có thể có nhiều cách (nhiều command) giống như Container. Vậy nên bài viết này mình cũng sẽ viết nhiều command trong một block code.
Với mỗi block code có nhiều command, các command này có ý nghĩa như nhau. Vậy nên các bạn việc sử dụng command nào cũng được, tùy hoàn cảnh và cách sử dụng của mỗi người nhé :v
docker images [OPTIONS]
docker image ls [OPTIONS]
Khi chạy một trong hai command trên sẽ hiển thị list các image có trong Docker host.
REPOSITORY TAG IMAGE ID CREATED SIZE
huytm/httpd 1.0 aea3873b1da1 7 minutes ago 458MB
huytm/httpd 2.0 aea3873b1da1 7 minutes ago 458MB
Trong đó
REPOSITORY: là kho chứa của một Image. Image này có thể có nhiều TAG
TAG: TAG có thể hiểu là version của Image cũng được
IMAGE ID: ID của Image
CREATED: Thời gian tạo Image
SIZE: Dung lượng của Image
Ý nghĩa: Tải một image về từ Registry (Mặc định là DockerHub)
Cú pháp
docker image pull [OPTIONS] NAME[:TAG|@DIGEST]
docker image pull centos
Ý nghĩa: Đẩy một image về lên Registry (Mặc định là DockerHub)
Cú pháp
docker image push [OPTIONS] NAME[:TAG]
Trước hết bạn phải tạo một tài khoản của DockerHub. Tiếp theo là tên Image phải bắt đầu bởi tên tài khoản DockerHub của bạn (Chẳng hạn huytm/centost_httpd )
docker image push huytm/centost_httpd:1.0
Nhập username / password của DockerHub và đợi một chút để image được đẩy lên.
Kết quả như sau:
Ý nghĩa: Hiển thị chi tiết của một image
Cú pháp
docker inspect [OPTIONS] IMAGE
docker image inspect [OPTIONS] IMAGE
docker inspect my_image
Ý nghĩa: Hiển thị lịch sử của image
Cú pháp
docker image history [OPTIONS] IMAGE
docker image history my_image
docker image history my_image:<TAG>
Ý nghĩa: Tạo một Image có TAG mới từ một Image đang có
Cú pháp
docker image tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
docker image tag my-image:TAG1 my-image:TAG2
Ý nghĩa: Save một image thành một file .tar. File này sẽ bao gồm các Layer sử dụng để tạo image đó, các file data dạng .json …
Cú pháp
docker image save [OPTIONS] IMAGE [IMAGE...]
docker image save -o /opt/my_image_file.tar my_image
Ý nghĩa: Sử dụng file tar vừa save được ở câu lệnh docker save để tạo lại một image
Cú pháp
docker image load [OPTIONS]
docker image load -i my_image_file.tar
Ý nghĩa: Xóa một hoặc nhiều image
Cú pháp
docker rmi [OPTIONS] IMAGE [IMAGE...]
docker image rm [OPTIONS] IMAGE [IMAGE...]
docker image rm my_image
Như vậy trong bài viết này mình đã giới thiệu một số các command cơ bản để làm việc với Image. Ở phần tiếp theo mình sẽ giới thiệu một khái niệm quan trọng trong Docker đó là Docker Volume.
Cảm ơn các bạn đã theo dõi serie của mình ! :D
“if you have knowledge let others light their candles in it”
https://docs.docker.com/engine/reference/commandline/run/
Thực hiện bởi cloud365.vn