Я загружаю BLOB-объект из azure с этой зависимостью maven
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-storage-blob</artifactId>
<version>11.0.0</version>
</dependency>
Я использую следующий код для загрузки файла:
BlockBlobURL blockBlobURL = getContainerUrl(containerName).createBlockBlobURL(path);
BlobRange blobRange = new BlobRange();
blobRange.withCount(Long.MAX_VALUE);
blobRange.withOffset(0);
blockBlobURL.download(blobRange, null, false, null).flatMapCompletable(response -> {
AsynchronousFileChannel channel = AsynchronousFileChannel.open(Paths.get(sourceFile.getPath()),
StandardOpenOption.CREATE, StandardOpenOption.WRITE);
return FlowableUtil.writeFile(response.body(null), channel);
}).doOnComplete(() -> LOG.debug("The blob was downloaded to " + sourceFile.getAbsolutePath()))
// To call it synchronously add .blockingAwait()
.blockingAwait();
Этот код хорошо работает на моем windows система, но не в контейнере docker. Это не go далее "blockBlobURL.download". Контейнер docker напрямую вылетает без каких-либо логов.
com.microsoft.rest.v2.http.SharedChannelPool # слив: 139 - Канал получен из пула
Я не уверен, почему это происходит только в контейнере .