Vậy bây giờ chúng ta cần làm gì - những game nổ hũ uy tín
]( "Hạn chế mức sử dụng CPU của Docker") Hạn chế mức sử dụng CPU của Docker
Bây giờ chúng ta sẽ thử làm điều thú vị một chút. Đầu tiên, chúng ta sẽ cài đặt Vim và GCC vào trong container, sau đó viết đoạn mã C đơn giản như sau:
1#include <stdio.h>
2int main(void){
3 int i = 0;
4 for(;;) i++;
5 return 0;
6}
Đoạn mã này chỉ là một vòng lặp vô tận đơn giản. Tiếp theo, chúng ta sẽ biên dịch và chạy chương trình này bên trong container:
1$ gcc 1.c
2$ ./a.out
Sau khi chạy chương trình, chúng ta có thể kiểm tra mức độ sử dụng tài nguyên hệ thống (CPU). [Hình ảnh dưới đây minh họa the thao 24h ngoai hang anh việc CPU đạt đến 100% trong container.] Không chỉ vậy, nếu bạn kiểm tra từ bên ngoài container trên máy chủ, bạn sẽ thấy rằng một nhân CPU đã bị chiếm hoàn toàn do chương trình này là đơn luồng.
Vậy bây giờ chúng ta cần làm gì? Vì chúng ta đã cài đặt Vim và GCC trong container Ubuntu này rồi, để tránh phải cài lại mỗi lần, chúng ta nên lưu trạng thái hiện tại của container bằng cách sử dụng lệnh docker commit
.
1docker commit -a "nick" -m "my ubuntu" f63c5607df06 my_ubuntu:v1
Tiếp theo, chúng ta sẽ khởi động lại container nhưng với giới hạn sử dụng CPU ở mức thấp hơn:
1docker run -it --cpus=0.1 my_ubuntu:v1 bash
Lệnh Đăng Nhập Xda77 --cpus=0.1
này thực chất dựa trên công nghệ cgroup mà tôi đã đề cập trong bài trước. Nó giúp kiểm soát và phân chia tài nguyên giữa các tiến trình, chẳng hạn như CPU và bộ nhớ.