question này giải thích cách ngăn các vùng chứa Docker bắt đầu từ một hình ảnh.Dừng vùng chứa đế lót bằng tên hình ảnh và không báo lỗi nếu không có vùng chứa nào đang chạy
Nhưng nếu không có vùng chứa đang hoạt động, tôi gặp lỗi điểm dừng trình yêu cầu tối thiểu một đối số. Điều đó có nghĩa là tôi không thể chạy lệnh này trong một tập lệnh .sh dài mà không bị đứt.
Làm cách nào để thay đổi các lệnh này hoạt động ngay cả khi không tìm thấy kết quả nào?
docker stop $(docker ps -q --filter ancestor="imagname")
docker rm `docker ps -aq` &&
(Tôi đang tìm kiếm một câu trả lời Docker tinh khiết nếu có thể, không phải là một thử nghiệm bash, như tôi đang chạy kịch bản của tôi qua ssh vì vậy tôi không nghĩ rằng tôi có quyền truy cập để kiểm tra kịch bản bình thường)
Tìm thấy câu trả lời trong nhận xét của kampde về bài đăng trên blog này: http://blog.yohanliyanage.com/2015/05/docker-clean-up-after-yourself/. Chỉ cần sử dụng xargs với r để bỏ qua các đường ống rỗng: ** docker ps -q --filter ancestor = "imageName" | xargs -r docker stop ** – Richard
Bạn nên đăng giải pháp của mình làm câu trả lời và chấp nhận nó. –