Saya sedang mengerjakan plugin volume baru dan saya diminta semua tes vol-test untuk lulus. Dan saya memiliki semua tes berhasil lulus (pada lingkungan dengan plugin yang diinstal) kecuali yang pertama, yaitu docker plugin install
. Masalahnya adalah ada tiga cara yang memungkinkan seseorang dapat menginstal plugin khusus:
File .sock adalah soket domain UNIX.
File .spec adalah file teks yang berisi URL, seperti unix: ///other.sock atau tcp: // localhost: 8080.
File .json adalah file teks yang berisi spesifikasi json lengkap untuk plugin.
dan kami menggunakan json, yang hanya merupakan server REST yang mengimplementasikan API docker (ditulis dalam java, spring). Proses instalasi untuk itu langsung: cukup salin file json /etc/docker/plugins
dan dockerd secara otomatis menemukannya.
Masalahnya muncul ketika saya mencoba mengintegrasikan plugin ke dalam docker plugin install
perintah. Seperti yang dinyatakan di sini :
Docker pertama-tama mencari plugin di host Docker Anda. Jika plugin tidak ada secara lokal, maka plugin ditarik dari registri.
Proses instalasi kami tidak menganggap koneksi ke registri pribadi atau publik, jadi kami perlu docker plugin create
perintah pertama untuk membuat plugin secara lokal. Dan di sinilah saya mengalami kesulitan untuk membungkus kepala saya bagaimana melakukannya dengan plugin berbasis json. Sesuai dokumen ini , saya perlu menentukan jalur ke plugin. Jika saya menggunakan nama direktori, ia mengharapkan config.json
dan rootfs
hadir dalam direktori.
TAPI
1. config.json
- ini adalah konfigurasi, yang menjelaskan .sock
konfigurasi format, dan bukan .json
formatnya (tolong perbaiki saya jika saya salah)
2. bagaimana cara membuat rootfs dan mengapa saya membutuhkannya jika plugin saya hanya REST mandiri. layanan dan bahkan tidak dalam wadah?
Hargai bantuan apa pun.