Tôi đang cố gắng tạo tập lệnh tiện ích bash để kiểm tra xem trình nền tảng docker có đang chạy trên máy chủ của tôi hay không. Có cách nào tốt hơn để kiểm tra xem trình nền tảng docker có chạy trên máy chủ của tôi không phải là chạy mã như thế này không?Làm cách nào để kiểm tra xem trình nền tảng docker có đang chạy không?
ps -ef | grep docker
root 1250 1 0 13:28 ? 00:00:04 /usr/bin/dockerd --selinux-enabled
root 1598 1250 0 13:28 ? 00:00:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim docker-containerd-shim --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --runtime docker-runc
root 10997 10916 0 19:47 pts/0 00:00:00 grep --color=auto docker
Tôi muốn tạo tập lệnh bash shell để kiểm tra xem trình nền của docker có đang chạy hay không. Nếu nó đang chạy sau đó không làm gì, nhưng nếu nó không phải là sau đó có daemon docker bắt đầu.
Mã giả của tôi giống như thế này. Tôi đang nghĩ đến việc phân tích đầu ra của ps -ef của tôi nhưng tôi chỉ muốn biết nếu có một cách hiệu quả hơn để làm giả của tôi.
if (Docker không chạy)
run docker
cuối
T.B. Tôi không có chuyên gia về Linux và tôi chỉ cần thực hiện tiện ích này trên môi trường của riêng mình.
'ps -C docker -opid =' –