quarkus: I'm using Quarkus CLI tool to build a Jib Image but fails
Describe the bug
I’m using the Quarkus CLI tool to build a Jib Image but it fails because there is no Docker host available, but Jib requires no Docker
Expected behavior
Build a container image using Jib
Actual behavior
[ERROR] Caused by: java.io.IOException: ‘docker load’ command failed with error: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? [ERROR] [ERROR] at com.google.cloud.tools.jib.docker.CliDockerClient.load(CliDockerClient.java:209) [ERROR] at com.google.cloud.tools.jib.builder.steps.LoadDockerStep.call(LoadDockerStep.java:74) [ERROR] at com.google.cloud.tools.jib.builder.steps.StepsRunner.lambda$loadDocker$18(StepsRunner.java:626) [ERROR] at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131) [ERROR] at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:74) [ERROR] at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82) [ERROR] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) [ERROR] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) [ERROR] at java.base/java.lang.Thread.run(Thread.java:1589)
How to Reproduce?
Create a new project using Quarkus CLI.
Then run quarkus image build jib -Dquarkus.container-image.image=quay.io/lordofthejars/tilt:latest
[INFO] ---------------------< org.acme:code-with-quarkus >---------------------
[INFO] Building code-with-quarkus 1.0.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- quarkus-maven-plugin:2.16.6.Final:image-build (default-cli) @ code-with-quarkus ---
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Starting (local) container image build for jar using jib.
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Using docker to run the native image builder
[WARNING] [io.quarkus.container.image.jib.deployment.JibProcessor] Base image 'registry.access.redhat.com/ubi8/openjdk-17-runtime:1.14' does not use a specific image digest - build may not be reproducible
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Using base image with digest: sha256:1f6d8d9165248addbcfbbd5134bd85c7c443a55eb132fda82888c3deb2c6e5e5
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Container entrypoint set to [java, -Djava.util.logging.manager=org.jboss.logmanager.LogManager, -jar, quarkus-run.jar]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.931 s
[INFO] Finished at: 2023-04-18T10:05:55+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.quarkus.platform:quarkus-maven-plugin:2.16.6.Final:image-build (default-cli) on project code-with-quarkus: Failed to build quarkus application: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[ERROR] [error]: Build step io.quarkus.container.image.jib.deployment.JibProcessor#buildFromJar threw an exception: java.lang.RuntimeException: Unable to create container image
[ERROR] at io.quarkus.container.image.jib.deployment.JibProcessor.containerize(JibProcessor.java:255)
[ERROR] at io.quarkus.container.image.jib.deployment.JibProcessor.buildFromJar(JibProcessor.java:181)
[ERROR] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
[ERROR] at java.base/java.lang.reflect.Method.invoke(Method.java:578)
[ERROR] at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:909)
[ERROR] at io.quarkus.builder.BuildContext.run(BuildContext.java:281)
[ERROR] at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
[ERROR] at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2449)
[ERROR] at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1478)
[ERROR] at java.base/java.lang.Thread.run(Thread.java:1589)
[ERROR] at org.jboss.threads.JBossThread.run(JBossThread.java:501)
[ERROR] Caused by: java.util.concurrent.ExecutionException: java.io.IOException: 'docker load' command failed with error: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[ERROR]
[ERROR] at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:588)
[ERROR] at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:567)
[ERROR] at com.google.common.util.concurrent.FluentFuture$TrustedFuture.get(FluentFuture.java:91)
[ERROR] at com.google.cloud.tools.jib.builder.steps.StepsRunner.run(StepsRunner.java:219)
[ERROR] at com.google.cloud.tools.jib.api.Containerizer.run(Containerizer.java:406)
[ERROR] at com.google.cloud.tools.jib.api.JibContainerBuilder.containerize(JibContainerBuilder.java:610)
[ERROR] at io.quarkus.container.image.jib.deployment.JibProcessor.containerize(JibProcessor.java:248)
[ERROR] ... 10 more
[ERROR] Caused by: java.io.IOException: 'docker load' command failed with error: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
[ERROR]
[ERROR] at com.google.cloud.tools.jib.docker.CliDockerClient.load(CliDockerClient.java:209)
[ERROR] at com.google.cloud.tools.jib.builder.steps.LoadDockerStep.call(LoadDockerStep.java:74)
[ERROR] at com.google.cloud.tools.jib.builder.steps.StepsRunner.lambda$loadDocker$18(StepsRunner.java:626)
[ERROR] at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
[ERROR] at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:74)
[ERROR] at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
[ERROR] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
[ERROR] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
[ERROR] at java.base/java.lang.Thread.run(Thread.java:1589)
[ERROR] Caused by: java.io.IOException: Broken pipe
[ERROR] at java.base/java.io.FileOutputStream.writeBytes(Native Method)
[ERROR] at java.base/java.io.FileOutputStream.write(FileOutputStream.java:372)
[ERROR] at java.base/java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:125)
[ERROR] at java.base/java.io.BufferedOutputStream.implWrite(BufferedOutputStream.java:221)
[ERROR] at java.base/java.io.BufferedOutputStream.write(BufferedOutputStream.java:205)
[ERROR] at com.google.cloud.tools.jib.http.NotifyingOutputStream.write(NotifyingOutputStream.java:61)
[ERROR] at org.apache.commons.compress.utils.CountingOutputStream.write(CountingOutputStream.java:48)
[ERROR] at org.apache.commons.compress.utils.FixedLengthBlockOutputStream$BufferAtATimeOutputChannel.write(FixedLengthBlockOutputStream.java:244)
[ERROR] at org.apache.commons.compress.utils.FixedLengthBlockOutputStream.writeBlock(FixedLengthBlockOutputStream.java:92)
[ERROR] at org.apache.commons.compress.utils.FixedLengthBlockOutputStream.maybeFlush(FixedLengthBlockOutputStream.java:86)
[ERROR] at org.apache.commons.compress.utils.FixedLengthBlockOutputStream.write(FixedLengthBlockOutputStream.java:122)
[ERROR] at org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.write(TarArchiveOutputStream.java:468)
[ERROR] at java.base/java.security.DigestOutputStream.write(DigestOutputStream.java:146)
[ERROR] at com.google.cloud.tools.jib.hash.CountingDigestOutputStream.write(CountingDigestOutputStream.java:80)
[ERROR] at com.google.common.io.ByteStreams.copy(ByteStreams.java:118)
[ERROR] at com.google.cloud.tools.jib.hash.Digests.lambda$computeDigest$2(Digests.java:87)
[ERROR] at com.google.cloud.tools.jib.hash.Digests.computeDigest(Digests.java:104)
[ERROR] at com.google.cloud.tools.jib.hash.Digests.computeDigest(Digests.java:88)
[ERROR] at com.google.cloud.tools.jib.blob.FileBlob.writeTo(FileBlob.java:39)
[ERROR] at com.google.cloud.tools.jib.tar.TarStreamBuilder.writeAsTarArchiveTo(TarStreamBuilder.java:53)
[ERROR] at com.google.cloud.tools.jib.image.ImageTarball.dockerWriteTo(ImageTarball.java:166)
[ERROR] at com.google.cloud.tools.jib.image.ImageTarball.writeTo(ImageTarball.java:84)
[ERROR] at com.google.cloud.tools.jib.docker.CliDockerClient.load(CliDockerClient.java:195)
[ERROR] ... 8 more
[ERROR] Suppressed: java.io.IOException: This archive contains unclosed entries.
[ERROR] at org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.finish(TarArchiveOutputStream.java:297)
[ERROR] at org.apache.commons.compress.archivers.tar.TarArchiveOutputStream.close(TarArchiveOutputStream.java:315)
[ERROR] at com.google.cloud.tools.jib.tar.TarStreamBuilder.writeAsTarArchiveTo(TarStreamBuilder.java:56)
[ERROR] ... 11 more
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
❯ code .
❯ quarkus image build jib -Dquarkus.container-image.image=quay.io/lordofthejars/tilt:latest
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< org.acme:code-with-quarkus >---------------------
[INFO] Building code-with-quarkus 1.0.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-compiler-plugin:3.10.1:compile (default-cli) @ code-with-quarkus ---
[INFO] Nothing to compile - all classes are up to date
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.355 s
[INFO] Finished at: 2023-04-18T10:08:49+02:00
[INFO] ------------------------------------------------------------------------
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< org.acme:code-with-quarkus >---------------------
[INFO] Building code-with-quarkus 1.0.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- quarkus-maven-plugin:2.16.6.Final:image-build (default-cli) @ code-with-quarkus ---
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Starting (local) container image build for jar using jib.
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Using docker to run the native image builder
[WARNING] [io.quarkus.container.image.jib.deployment.JibProcessor] Base image 'registry.access.redhat.com/ubi8/openjdk-17-runtime:1.14' does not use a specific image digest - build may not be reproducible
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Using base image with digest: sha256:1f6d8d9165248addbcfbbd5134bd85c7c443a55eb132fda82888c3deb2c6e5e5
[INFO] [io.quarkus.container.image.jib.deployment.JibProcessor] Container entrypoint set to [java, -Djava.util.logging.manager=org.jboss.logmanager.LogManager, -jar, quarkus-run.jar]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.474 s
[INFO] Finished at: 2023-04-18T10:08:57+02:00
[INFO] ------------------------------------------------------------------------
Output of uname -a
or ver
MacOS
Output of java -version
openjdk version “19.0.1” 2022-10-18
GraalVM version (if different from Java)
No response
Quarkus version or git rev
2.16.6
Build tool (ie. output of mvnw --version
or gradlew --version
)
quarkus
Additional information
No response
About this issue
- Original URL
- State: closed
- Created a year ago
- Reactions: 1
- Comments: 18 (17 by maintainers)
Yeah, this seems to be the case. It’s not obvious why. Looking into it.
👍🏼