Создайте пользовательский запрос Curl в Java SpringBoot

Привет, я пытаюсь запустить завиток из java springboot curl --unix-socket /var/run/docker.sock http://localhost/containers/json

Я создал класс обслуживания

public Long getContainerPort() {
        logger.info("Calling  Container Api");
        Long containerPortNumber = defaultContainerPortNumber;
        List<ContainerPort> containerPorts = Arrays.asList(restTemplate1.getForObject(curlURIBuilder.toUriString(), ContainerPort[].class));
        if (CollectionUtils.isEmpty(containerPorts)) {
            logger.debug("Container Api response is empty. So returning defualt port");
            return containerPortNumber;
        }
        for (ContainerPort containerPort : containerPorts) {
            if (CollectionUtils.isEmpty(containerPort.getPorts())) {
                continue;
            }
            for (Port port : containerPort.getPorts()) {
                if (port.getPrivatePort() == 8081) {
                    containerPortNumber = (null == port.getPublicPort() ? containerPortNumber : port.getPublicPort());
                    break;
                }
            }
        }
        logger.debug("Container port is: {}", containerPortNumber);
        return containerPortNumber;
    }

}

Это работает только для отправки простого запроса на скручивание, т.е. curl http://localhost/containers/json

без --unix-socket /var/run/docker.sock

Я использовал UriComponentbuilder для сборки curl --unix-socket /var/run/docker.sock http://localhost/containers/json но получить ошибку uri is absolute

Это... не URI.

David Conrad 25.02.2019 23:22

как лучше всего этого добиться

Siraj Syed 25.02.2019 23:45
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
88
0

Другие вопросы по теме