Я работаю над новым плагином для тома, и мне необходимо пройти все тесты vol-test . И у меня все тесты успешно пройдены (в среде с установленным плагином), кроме первого, docker plugin install
. Дело в том, что существует три возможных способов установки пользовательского плагина:
.sock - это доменные сокеты UNIX.
.spec - это текстовые файлы, содержащиеURL, такие как unix: ///other.sock или tcp: // localhost: 8080.
.json - это текстовые файлы, содержащие полную спецификацию json для плагина.
и мыиспользуйте json, который является просто сервером REST, реализующим API-интерфейс докера (написан на java, spring). Процесс установки для него прямо: просто скопируйте файл json в /etc/docker/plugins
и dockerd автоматически обнаружит его.
Проблема возникает, когда я пытаюсь интегрировать плагин в команду docker plugin install
. Как сказано здесь :
Docker сначала ищет плагин на вашем хосте Docker. Если плагин не существует локально, то плагин извлекается из реестра.
Наш процесс установки не предполагает подключения к частному или общедоступному реестру, поэтому нам нужна первая команда docker plugin create
для того, чтобы создать плагин локально. И вот тут у меня возникают трудности, чтобы обдумать, как это сделать с помощью плагина на основе json. Что касается этого документа, мне нужно указать путь к плагину. Если я использую имя каталога, он ожидает, что в каталоге будут присутствовать config.json
и rootfs
.
НО
1. config.json
- это конфиг, описывающий конфиги формата .sock
, а не формат .json
(исправьте меня, если я ошибаюсь)
2... как мне создать rootfs и зачем он мне нужен, если мой плагин - это просто отдельная служба REST и его нет даже в контейнере?
Благодарим за любую помощь.