Đ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
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.
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
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