docker

Điểm tốt về công cụ Docker là nó được thiết kế để hoạt động trên nhiều hệ điều hành khác nhau. Chúng tôi đã thấy cài đặt trên Windows và thấy tất cả các lệnh Docker trên hệ thống Linux. Bây giờ chúng ta hãy xem các lệnh Docker khác nhau trên Hệ điều hành Windows.

Hình ảnh Docker

Hãy chạy lệnh Docker images trên máy chủ Windows

Docker - Vùng chứa và Máy chủ

Từ đây, chúng ta có thể thấy rằng chúng ta có hai hình ảnh – ubuntu và hello-world .

Chạy một Container

Bây giờ, hãy chạy một vùng chứa trong máy chủ Windows Docker.

Docker - Vùng chứa và Máy chủ

Chúng ta có thể thấy rằng bằng cách chạy vùng chứa, bây giờ chúng ta có thể chạy vùng chứa Ubuntu trên máy chủ Windows.

Liệt kê tất cả các vùng chứa

Hãy liệt kê tất cả các vùng chứa trên máy chủ Windows.

Dừng một container

Bây giờ chúng ta hãy dừng một vùng chứa đang chạy trên máy chủ Windows.

Vì vậy, bạn có thể thấy rằng công cụ Docker khá nhất quán khi nói đến các máy chủ Docker khác nhau và nó hoạt động trên Windows giống như cách hoạt động trên Linux.

Docker – Định cấu hình

Trong chương này, chúng ta sẽ xem xét các tùy chọn khác nhau để cấu hình Docker.

trạm dừng dịch vụ

Lệnh này được sử dụng để dừng quá trình Docker daemon .

Cú pháp

service docker stop 

Giá trị trả lại

Một thông báo cho thấy rằng quá trình Docker đã dừng lại.

Thí dụ

sudo service docker stop 

Đầu ra

Khi chúng ta chạy lệnh trên, nó sẽ tạo ra kết quả sau:

Giá trị trả lại

Một thông báo cho thấy rằng quá trình Docker đã dừng lại.

Thí dụ

sudo service docker stop 

Đầu ra

Khi chúng ta chạy lệnh trên, nó sẽ tạo ra kết quả sau:

dịch vụ docker bắt đầu

Lệnh này được sử dụng để bắt đầu quá trình Docker daemon.

Cú pháp

service docker start 

Giá trị trả lại

Một thông báo cho biết quá trình Docker đã bắt đầu.

Thí dụ

sudo service docker start

Đầu ra

Khi chúng ta chạy lệnh trên, nó sẽ tạo ra kết quả sau:

Docker – Hộp chứa và Vỏ

Theo mặc định, khi bạn khởi chạy một vùng chứa, bạn cũng sẽ sử dụng lệnh shell trong khi khởi chạy vùng chứa như được hiển thị bên dưới. Đây là những gì chúng ta đã thấy trong các chương trước khi chúng ta làm việc với vùng chứa

Docker - Hộp chứa và Vỏ

Trong ảnh chụp màn hình ở trên, bạn có thể thấy rằng chúng tôi đã đưa ra lệnh sau:

sudo docker run –it centos /bin/bash 

Chúng tôi đã sử dụng lệnh này để tạo một vùng chứa mới và sau đó sử dụng lệnh Ctrl + P + Q để thoát ra khỏi vùng chứa. Nó đảm bảo rằng vùng chứa vẫn tồn tại ngay cả sau khi chúng ta thoát ra khỏi vùng chứa.

Chúng tôi có thể xác minh rằng vùng chứa vẫn tồn tại bằng lệnh Docker ps . Nếu chúng ta phải thoát ra khỏi thùng chứa trực tiếp, thì chính thùng chứa đó sẽ bị phá hủy.

Giờ đây, có một cách dễ dàng hơn để gắn vào các thùng chứa và thoát ra khỏi chúng một cách sạch sẽ mà không cần phải phá hủy chúng. Một cách để đạt được điều này là sử dụng lệnh nsenter .

Trước khi chúng tôi chạy lệnh nsenter , trước tiên bạn cần cài đặt hình ảnh nsenter . Nó có thể được thực hiện bằng cách sử dụng lệnh sau:

docker run –rm -v /usr/local/bin:/target jpetazzo/nsenter

Trước khi sử dụng lệnh nsenter , chúng ta cần lấy ID tiến trình của vùng chứa, vì lệnh này được yêu cầu bởi lệnh nsenter . Chúng ta có thể lấy ID quy trình thông qua lệnh Docker kiểm tra và lọc nó qua Pid

Như đã thấy trong ảnh chụp màn hình ở trên, trước tiên chúng ta đã sử dụng lệnh docker ps để xem các vùng chứa đang chạy. Chúng ta có thể thấy rằng có một vùng chứa đang chạy với ID là ef42a4c5e663.

Sau đó chúng tôi sử dụng Docker kiểm tra lệnh để kiểm tra cấu hình của container này và sau đó sử dụng grep lệnh để chỉ lọc các Process ID. Và từ đầu ra, chúng ta có thể thấy rằng Process ID là 2978.

Bây giờ chúng ta đã có ID tiến trình, chúng ta có thể tiến hành chuyển tiếp và sử dụng lệnh nsenter để đính kèm vào vùng chứa Docker.

nsenter

Phương pháp này cho phép một người gắn vào một vùng chứa mà không cần thoát ra khỏi vùng chứa.

Cú pháp

Lệnh nsenter –m –u –n –p –i –t containerID

Tùy chọn

  • -u được sử dụng để đề cập đến không gian tên Uts
  • -m được sử dụng để đề cập đến không gian tên gắn kết
  • -n được sử dụng để đề cập đến không gian tên mạng
  • -p được sử dụng để đề cập đến không gian tên tiến trình
  • -i s để làm cho vùng chứa chạy ở chế độ tương tác.
  • -t được sử dụng để kết nối các luồng I / O của vùng chứa với hệ điều hành chủ.
  • containerID – Đây là ID của vùng chứa.
  • Lệnh – Đây là lệnh chạy trong vùng chứa.

Thí dụ

sudo nsenter –m –u –n –p –i –t 2978 /bin/bash

Từ kết quả đầu ra, chúng ta có thể quan sát các điểm sau:

  • Lời nhắc thay đổi trực tiếp đối với bash shell khi chúng ta sử dụng lệnh nsenter .

Sau đó, chúng tôi đưa ra lệnh thoát . Bây giờ thông thường nếu bạn không sử dụng lệnh nsenter , vùng chứa sẽ bị phá hủy. Nhưng bạn sẽ nhận thấy rằng khi chúng ta chạy lệnh nsenter , vùng chứa vẫn hoạt động

Docker – File Docker – Tệp xem thêm

Trả lời