javaquarkusjib

Quarkus build requires docker to be started in spite of Jib-presense


I'm pretty confused, trying to understand the logic how Quarkus container build works.

So what I do have:

  1. Qaurkus 3.11.1.
  2. quarkus-container-image-jib

It my understanding as it is mentioned here Jib is the tool which allows me to create the images during build without having the running Docker.

So I have super simple Quarkus-app Hello-World and trying to make the build, previously have these options are added

quarkus.container-image.build=true
quarkus.container-image.name=hello-world-${quarkus.application.name} 

quarkus.container-image.registry=ghcr.io
quarkus.container-image.group=<my github group name>
quarkus.container-image.username=<my github username>
quarkus.container-image.password=<my github token with all required permissions>

and hoping that some container will be the result of my build and will be pushed to Github registry.

But during build I see

Caused by: java.io.IOException: 'docker load' command failed with error: Cannot connect to the Docker daemon at unix:///Users/me/.docker/run/docker.sock. Is the docker daemon running?

what certainly tells me that it is needed Docker daemon.

Consequently the push to registry is failed as well.

Thank you.


Solution

  • When using Jib in Quarkus, Docker is not needed when you push a container image.

    When instead you are building it locally, Docker (or Podman) is needed