{"record":{"id":"a7617da43e4ef60c","repo":"quarkusio/quarkus","slug":"the-buildx-properties-are-specific-to-executabl","errorCode":null,"errorMessage":"The 'buildx' properties are specific to 'executable-name=docker' and can not be used with the '%s' executable name. Either remove the `buildx` properties or the `executable-name` property.","messagePattern":"The 'buildx' properties are specific to 'executable-name=docker' and can not be used with the '(.+?)' executable name\\. Either remove the `buildx` properties or the `executable-name` property\\.","errorType":"console","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"extensions/container-image/container-image-docker/deployment/src/main/java/io/quarkus/container/image/docker/deployment/DockerProcessor.java","lineNumber":189,"sourceCode":"        return executableName;\n    }\n\n    private String[] getDockerBuildArgs(String image,\n            DockerfilePaths dockerfilePaths,\n            ContainerImageConfig containerImageConfig,\n            DockerConfig dockerConfig,\n            boolean pushImages,\n            String executableName,\n            List<String> additionalImageTags) {\n\n        var dockerBuildArgs = getContainerCommonBuildArgs(image, dockerfilePaths, containerImageConfig, dockerConfig, true);\n        var buildx = dockerConfig.buildx();\n        var useBuildx = buildx.useBuildx();\n\n        if (useBuildx) {\n            // Check the executable. If not 'docker', then fail the build\n            if (!DOCKER.equals(executableName)) {\n                throw new IllegalArgumentException(\n                        \"The 'buildx' properties are specific to 'executable-name=docker' and can not be used with the '%s' executable name. Either remove the `buildx` properties or the `executable-name` property.\"\n                                .formatted(executableName));\n            }\n\n            dockerBuildArgs.add(0, \"buildx\");\n        }\n\n        buildx.platform()\n                .filter(platform -> !platform.isEmpty())\n                .ifPresent(platform -> {\n                    dockerBuildArgs.addAll(List.of(\"--platform\", String.join(\",\", platform)));\n\n                    if (platform.size() == 1) {\n                        // Buildx only supports loading the image to the docker system if there is only 1 image\n                        dockerBuildArgs.add(\"--load\");\n                    }\n                });\n","sourceCodeStart":171,"sourceCodeEnd":207,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/extensions/container-image/container-image-docker/deployment/src/main/java/io/quarkus/container/image/docker/deployment/DockerProcessor.java#L171-L207","documentation":"DockerProcessor.getDockerBuildArgs rejects the build when buildx options are enabled but the executable name is not 'docker', since buildx is a Docker CLI plugin and cannot work with podman or other executables. The error names the offending executable and the conflicting properties.","triggerScenarios":"Configuring quarkus.docker.executable-name=podman (or similar) together with quarkus.docker.buildx.use-buildx=true (or any buildx.* option).","commonSituations":"Switching from docker to podman while leaving buildx settings enabled; copying config between projects with different container engines.","solutions":["Remove the quarkus.docker.buildx.* properties when using a non-docker executable","Or set quarkus.docker.executable-name=docker (default) to keep buildx","Disable use-buildx explicitly: quarkus.docker.buildx.use-buildx=false"],"exampleFix":"// before (application.properties)\nquarkus.docker.executable-name=podman\nquarkus.docker.buildx.use-buildx=true\n// after\nquarkus.docker.executable-name=podman\n# buildx properties removed","handlingStrategy":"validation","validationCode":"// fail fast when config conflicts\nif (!\"docker\".equals(config.executableName()) && config.buildx().useBuildx()) {\n    throw new IllegalArgumentException(\"buildx requires executable-name=docker\");\n}","typeGuard":null,"tryCatchPattern":"try {\n    imageBuild();\n} catch (IllegalArgumentException e) {\n    if (e.getMessage().contains(\"'buildx' properties\")) {\n        // drop buildx.* properties or switch executable-name to docker\n    } else { throw e; }\n}","preventionTips":["When switching to podman, remove all quarkus.docker.buildx.* properties","Keep engine-specific settings in separate Maven/Gradle profiles"],"tags":["docker","buildx","configuration"],"backgroundTag":"incompatible-config-combination","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-12T22:17:10.623Z"}