Docker: Installation & Basic Usage

docker.png

Docker là một dự án mã nguồn mở cung cấp một nền tảng mở cho các nhà phát triển và quản trị hệ thống để xây dựng, đóng gói, và chạy các ứng dụng bất cứ nơi nào như một container nhẹ. Docker tự động hóa việc triển khai các ứng dụng bên trong containers chứa các phần mềm cần thiêt. Phát triển Docker đã được bắt đầu bởi Solomon Hykes như một dự án nội bộ tại dotCloud. Để biết thêm về Docker bạn có thể tìm đọc tài liệu ở đây https: //docs.docker.com/.

1. Docker Images

Một image Docker là mẫu cơ bản cho một container Docker. Một image thường chứa hệ điều hành và các ứng dụng dễ dàng cài đặt. Những image Docker được sử dụng để chạy các container, bạn có thể tìm thấy nhiều image với một loạt các hệ điều hành và phần mềm đã được cài đặt trong Docker Hub https://hub.docker.com/.

2. Docker Container

Docker container là một image có thể được đọc và viết để chạy đầu tiên (chạy nền) của 1 image Docker. Docker đang sử dụng union-file-system như phụ trợ cho các container, bất kỳ thay đổi được thực hiện trong các container sẽ được lưu trong một layer mới phía trên image cơ bản. Các container là lớp mà chúng ta cài đặt các ứng dụng. Mỗi container chạy bị cô lập trong các host và do đó, cung cấp một nền tảng ứng dụng an toàn.

3. Docker Registry

Docker registry là một kho lưu trữ Docker images. Nó cung cấp các kho publicprivate. Các Docker registry công khai được gọi là Docker Hub. Ở đây chúng ta có thể pullpush image của chính chúng ta.

4. Installing Docker on Ubuntu 14.04

Trước khi bắt đầu cài đặt docker, chúng ta cần kiểm tra kernelos architecture của máy tính hiện tại:

$ uname -r
3.11.0-15-generic

Cập nhật APT package index và chắc chắn rằng APT hoạt động tốt với phương thức https

$ sudo apt-get update
$ apt-get install apt-transport-https ca-certificates

Cài đặt docker:

$ sudo apt-get install docker-engine

Chạy docker daemon:

$ sudo service docker start

Kiểm tra việc cài đặt docker có xảy ra lỗi hay không:

$ sudo docker run hello-world

Kiểm tra phiên bản của docker:

$ docker version

2.png

Sau cacs bước trên, nếu không có vấn đề gì sai sót, docker sẽ được cài đặt trên máy tính vủa bạn. Bước tiếp theo chúng ta cần làm là tạo mới 1 container bằng cách download một image trên docker registry

5. Basic usage

Tạo mới một container, chúng ta cần chọn hệ điều hành cho image. Chúng ta có thể tìm kiếm trên docker hub, hoặc tìm kiếm trực tiếp trên terminal bằng command:

$ docker search ubuntu

Commnad trên sẽ hiển thị ra tất cả images của hệ điều hành ubuntu được public.

3.png

Sau khi chọn được image mong muốn, bước tiếp theo chúng ta cần phải download image đó về máy tính để sử dụng.

$ docker pull ubuntu

4.png

Sau khi download thành công image về, để liệt kê các images đã được download về máy tính, chúng ta sử dụng lệnh:

$ docker images

5.png

Bước tiếp theo, chúng ta sẽ tạo container To create the container, you can use docker create tử image vừa download:

$ docker create ubuntu:14.04

6.png

Với command trên, docker sẽ tạo một container mới cho bạn, để khởi động container đó:

$ docker run -i -t ubuntu:14.04 /bin/bash

Các command trên sẽ tạo và chạy một container dựa trên ubuntu 14.04 và chạy command /bin/bash bên trong container, bạn sẽ được tự động chuyển vào trong container sau khi sử dụng command run.

Caontainer sẽ dừng khi chúng ta chạy command exit, nếu muốn chạy container nền, chúng ta cần thêm options -d trong command:

$ docker run -i -t -d ubuntu:14.04 /bin/bash

Để hiển thị các container chạy nền hay đang chạy, chúng ta sử dụng:

$ docker ps

Câu lệnh trên sẽ liệt kê tất cả các container đang chạy gồm tên, ID và thời gian chạy tương ứng.

8.png

Nếu bạn muốn xem logs của 1 command, bạn có thể sử dụng command:

$ docker logs NAMES/ContainerID

Với tên và ID có thể lấy từ câu lệnh phía trên

Để access vào một container đang chạy mà không cần phải chạy mới, chúng ta sử dụng lệnh:

$ docker exec -i -t NAMES/ContainerID

Để tắt một container, chúng ta có thể dùng lệnh exit khi đnag ở trong shell của container hoặc chạy lệnh:

$ docker stop NAME/ContainerID

Câu lệnh trên sẽ stop container mà không xóa nó, chúng ta có thể chạy lại nó với câu lệnh:

$ docker start NAME/ContainerID

Chú ý, mỗi lần chạy lệnh docker run ... thì một container mới sẽ được tạo ra, vậy nên để tránh lãng phí bộ nhớ, chúng ta sử dụng câu lệnh start ở trên với tên và ID của container. Nếu chúng ta muốn xóa một container, stop nó và dùng câu lệnh sau để xóa:

$ docker rm NAME/ContainerID

6. Kết luận

Docker là một nền tảng ảo hóa container nguồn mở giúp các nhà phát triển để triển khai các ứng dụng của họ và quản trị hệ thống để quản lý các ứng dụng trong môi trường chứa ảo an toàn. Docker chạy trên Intel / AMD kiến trúc 64-bit và hạt nhân nên có phiên bản cao hơn 3.10. Với Docker bạn có thể xây dựng và chạy ứng dụng của bạn bên trong một container và sau đó di chuyển container của bạn tới các máy khác chạy Docker không có bất kỳ lo lắng.