Tôi đang làm việc trên một plugin âm lượng hoàn toàn mới và tôi yêu cầu tất cả các bài kiểm tra vol-test phải được thông qua. Và tôi đã vượt qua tất cả các thử nghiệm thành công (trên một môi trường có cài đặt plugin) ngoại trừ thử nghiệm đầu tiên docker plugin install
. Vấn đề là có ba cách có thể để cài đặt một plugin tùy chỉnh:
Các tập tin .sock là các socket miền UNIX.
Các tệp .spec là các tệp văn bản chứa URL, chẳng hạn như unix: ///other.sock hoặc tcp: // localhost: 8080.
Các tệp .json là các tệp văn bản chứa thông số json đầy đủ cho plugin.
và chúng tôi sử dụng json, đơn giản là một máy chủ REST triển khai API docker (được viết bằng java, spring). Quá trình cài đặt cho nó thẳng tiến: chỉ cần sao chép tệp json vào /etc/docker/plugins
và dockerd tự động phát hiện ra nó.
Vấn đề xảy ra khi tôi cố gắng tích hợp plugin vào docker plugin install
lệnh. Như đã nêu ở đây :
Docker trông đầu tiên cho plugin trên máy chủ Docker của bạn. Nếu plugin không tồn tại cục bộ, thì plugin được lấy từ sổ đăng ký.
Quá trình cài đặt của chúng tôi không giả định kết nối với đăng ký riêng tư hoặc công khai, vì vậy chúng tôi cần docker plugin create
lệnh đầu tiên để tạo plugin cục bộ. Và đây là lúc tôi gặp khó khăn trong việc xoay quanh cách làm điều đó với plugin dựa trên json. Theo tài liệu này , tôi cần chỉ định một đường dẫn đến plugin. Nếu tôi sử dụng một tên thư mục, nó mong đợi config.json
và rootfs
có mặt trong thư mục.
NHƯNG
1. config.json
- đây là cấu hình, mô tả các cấu hình .sock
định dạng chứ không phải .json
định dạng (vui lòng sửa cho tôi nếu tôi sai)
2. Làm cách nào để tạo rootfs và tại sao tôi cần nó nếu plugin của tôi chỉ là một REST độc lập dịch vụ và nó thậm chí không có trong container?
Đánh giá cao bất kỳ sự giúp đỡ.