Ошибки с конечной точкой уведомления для локального реестра докеров
Я успешно развернул локальный реестр докеров и внедрил конечную точку прослушивателя для получения уведомлений о событиях в соответствии с документацией по настройке с использованием примера небезопасного файла конфигурации. Pushing, вытягивание и распечатка изображений работают хорошо. Тем не менее, я до сих пор не получил уведомление о событии. Журналы реестра выдают некоторые ошибки, которые я не совсем понимаю:
level=error msg="retryingsink: error writing events: httpSink{http://localhost:5050/event}: error posting: Post http://localhost:5050/event: dial tcp 127.0.0.1:5050: getsockopt: connection refused, retrying"
Я буду признателен за любую информацию.
Слушатель конечной точки реализован в Java
@RequestMapping(value="/event",method = RequestMethod.POST,consumes = "application/json")
public void listener(@RequestBody Events event) {
Event[] e = event.getEvents();
Event ee = new Event();
for (int i = 0; i < e.length; i++) {
System.out.println(e.length);
System.out.println(e[i].toString());
}
1 ответ
Таким образом, после нескольких часов исследований, то есть проверки журналов частного реестра, я понял, что медиа-тип сообщений, публикуемых слушателем реестра на конечных точках уведомлений, либо application/octet stream
или же application/vnd.docker.distribution.manifest.v2+json
, Следовательно, мое решение состояло в том, чтобы разрешить все типы носителей с использованием аннотации consumes = "*/*"
как указано в этой документации Spring, т.е.
@RequestMapping(value="/event",method = RequestMethod.POST,consumes = "*/*")