Извлекайте читаемые / исправимые данные из Docker Layer из ответа text / html (GET через / blobs / <layerdigest>в реестре) - PullRequest
0 голосов
/ 09 июля 2019

Мне нужна помощь, чтобы сделать следующее: Я хочу получить содержимое уровня Docker, используя только запрос GET (используя URL реестра Docker и дайджест определенного уровня Docker), сохранить его как файл .gz, извлечь упакованные файлы и иметь некоторую структуру внутри папка unzipped (см. скриншот ниже).

Что работает:

Выполнение запроса через Почтальон предлагает нечитаемый ответ, который я могу загрузить с помощью кнопки «Скачать». Ответ обычно - «text / html», но я могу изменить имя файла на «response.gz» при сохранении. Сохраненный файл .gz можно затем разархивировать в новый файл (без какого-либо типа), который затем снова можно разархивировать. Screenshot showing the overall structure when using postmans download functionality Что не сработало:

В моем классе java я делаю тот же запрос, получаю ответ в виде типа javax.ws.rs.core.Response и считываю содержимое через readEntity (). Я попытался сохранить этот ответ как .gz или .zip, но не могу разархивировать его, так как он не является файлом gzip. Content-Type ответа - text / html (как показано и в Postman).

Можно ли обработать ответ, используя Java, чтобы успешно получить тот же файл, что и в Postmans Download? Есть ли другой (простой) способ получить работающий архив .zip или .gz, содержащий данные, как показано на рисунке?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...