Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Base Image is pulled via http instead of https #3577

Closed
MeranaTona opened this issue Aug 25, 2022 · 1 comment
Closed

Base Image is pulled via http instead of https #3577

MeranaTona opened this issue Aug 25, 2022 · 1 comment

Comments

@MeranaTona
Copy link

MeranaTona commented Aug 25, 2022

Hi all,

I installed Camel K in an air gapped env via Helm and set a custom base image via the values.yaml by adding a local docker registry address at the beginning of the image name:

nameOverride: ""
fullnameOverride: ""

operator:
  image: docker-registry-ip-address:port/docker.io/apache/camel-k:1.8.2
  resources: {}
  securityContext: {}

platform:
  build:
    registry: { address: docker-registry-ip-address:port, insecure: false}
    #default, uses https: baseImage: adoptopenjdk/openjdk11:slim
    baseImage: docker-registry-ip-address:port/adoptopenjdk/openjdk11:slim
    maven:
         settings:
                 configMapKeyRef: { key: maven-settings.xml, name: maven-settings }
  cluster: "Kubernetes"

Unfortunately once I try to run a simple test route, the Camel K operator logs that it tried to pull the image via http but the registry requires https:

{"level":"info","ts":1661354335.8014874,"logger":"camel-k.maven.build","msg":""}
{"level":"info","ts":1661354335.801623,"logger":"camel-k.maven.build","msg":"--- quarkus-maven-plugin:2.7.0.Final:build (default) @ camel-k-integration ---"}
{"level":"info","ts":1661354337.9391341,"logger":"camel-k.maven.build","msg":"[io.quarkus.deployment.QuarkusAugmentor] Quarkus augmentation completed in 1178ms"}
{"level":"info","ts":1661354337.947723,"logger":"camel-k.maven.build","msg":"------------------------------------------------------------------------"}
{"level":"info","ts":1661354337.947854,"logger":"camel-k.maven.build","msg":"BUILD SUCCESS"}
{"level":"info","ts":1661354337.9479613,"logger":"camel-k.maven.build","msg":"------------------------------------------------------------------------"}
{"level":"info","ts":1661354337.9497774,"logger":"camel-k.maven.build","msg":"Total time:  3.215 s"}
{"level":"info","ts":1661354337.9500744,"logger":"camel-k.maven.build","msg":"Finished at: 2022-08-24T15:18:57Z"}
{"level":"info","ts":1661354337.9502215,"logger":"camel-k.maven.build","msg":"------------------------------------------------------------------------"}
{"level":"info","ts":1661354337.9863534,"logger":"camel-k.builder","msg":"step done in 4.370970 seconds","step":"github.com/apache/camel-k/pkg/builder/BuildQuarkusRunner","phase":"20","task":"builder"}
{"level":"info","ts":1661354337.9863944,"logger":"camel-k.builder","msg":"executing step","step":"github.com/apache/camel-k/pkg/builder/ComputeQuarkusDependencies","phase":"21","task":"builder"}
{"level":"info","ts":1661354338.0129228,"logger":"camel-k.builder","msg":"step done in 0.026486 seconds","step":"github.com/apache/camel-k/pkg/builder/ComputeQuarkusDependencies","phase":"21","task":"builder"}
{"level":"info","ts":1661354338.012946,"logger":"camel-k.builder","msg":"executing step","step":"github.com/apache/camel-k/pkg/builder/IncrementalImageContext","phase":"30","task":"builder"}
{"level":"info","ts":1661354338.0332348,"logger":"camel-k.builder","msg":"step done in 0.020230 seconds","step":"github.com/apache/camel-k/pkg/builder/IncrementalImageContext","phase":"30","task":"builder"}
{"level":"info","ts":1661354338.0334172,"logger":"camel-k.builder","msg":"dependencies: [camel:log camel:timer mvn:org.apache.camel.k:camel-k-runtime mvn:org.apache.camel.quarkus:camel-quarkus-groovy-dsl]"}
{"level":"info","ts":1661354338.0336337,"logger":"camel-k.builder","msg":"artifacts: [camel-k-integration-1.8.2.jar io.quarkus.quarkus-bootstrap-runner-2.7.0.Final.jar io.quarkus.quarkus-development-mode-spi-2.7.0.Final.jar io.smallrye.common.smallrye-common-io-1.8.0.jar org.glassfish.jakarta.json-1.1.6.jar org.graalvm.sdk.graal-sdk-21.3.0.jar org.jboss.logging.jboss-logging-3.4.3.Final.jar org.jboss.logmanager.jboss-logmanager-embedded-1.0.9.jar org.wildfly.common.wildfly-common-1.5.4.Final-format-001.jar io.quarkus.arc.arc-2.7.0.Final.jar io.quarkus.quarkus-arc-2.7.0.Final.jar io.quarkus.quarkus-core-2.7.0.Final.jar io.quarkus.quarkus-fs-util-0.0.8.jar io.quarkus.quarkus-jsonp-2.7.0.Final.jar io.quarkus.quarkus-logging-json-2.7.0.Final.jar io.smallrye.common.smallrye-common-annotation-1.8.0.jar io.smallrye.common.smallrye-common-classloader-1.8.0.jar io.smallrye.common.smallrye-common-constraint-1.8.0.jar io.smallrye.common.smallrye-common-expression-1.8.0.jar io.smallrye.common.smallrye-common-function-1.8.0.jar io.smallrye.config.smallrye-config-2.8.2.jar io.smallrye.config.smallrye-config-common-2.8.2.jar io.smallrye.config.smallrye-config-core-2.8.2.jar jakarta.annotation.jakarta.annotation-api-1.3.5.jar jakarta.el.jakarta.el-api-3.0.3.jar jakarta.enterprise.jakarta.enterprise.cdi-api-2.0.2.jar jakarta.inject.jakarta.inject-api-1.0.jar jakarta.interceptor.jakarta.interceptor-api-1.2.5.jar jakarta.transaction.jakarta.transaction-api-1.3.3.jar org.apache.camel.camel-api-3.14.1.jar org.apache.camel.camel-base-3.14.1.jar org.apache.camel.camel-base-engine-3.14.1.jar org.apache.camel.camel-bean-3.14.1.jar org.apache.camel.camel-componentdsl-3.14.1.jar org.apache.camel.camel-core-catalog-3.14.1.jar org.apache.camel.camel-core-engine-3.14.1.jar org.apache.camel.camel-core-languages-3.14.1.jar org.apache.camel.camel-core-model-3.14.1.jar org.apache.camel.camel-core-processor-3.14.1.jar org.apache.camel.camel-core-reifier-3.14.1.jar org.apache.camel.camel-dsl-support-3.14.1.jar org.apache.camel.camel-endpointdsl-3.14.1.jar org.apache.camel.camel-groovy-dsl-3.14.1.jar org.apache.camel.camel-groovy-dsl-common-3.14.1.jar org.apache.camel.camel-log-3.14.1.jar org.apache.camel.camel-main-3.14.1.jar org.apache.camel.camel-management-api-3.14.1.jar org.apache.camel.camel-microprofile-config-3.14.1.jar org.apache.camel.camel-support-3.14.1.jar org.apache.camel.camel-timer-3.14.1.jar org.apache.camel.camel-tooling-model-3.14.1.jar org.apache.camel.camel-util-3.14.1.jar org.apache.camel.camel-util-json-3.14.1.jar org.apache.camel.k.camel-k-core-1.12.0.jar org.apache.camel.k.camel-k-core-api-1.12.0.jar org.apache.camel.k.camel-k-core-support-1.12.0.jar org.apache.camel.k.camel-k-runtime-1.12.0.jar org.apache.camel.quarkus.camel-quarkus-bean-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-core-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-groovy-dsl-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-log-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-timer-2.7.0.jar org.codehaus.groovy.groovy-3.0.8.jar org.eclipse.microprofile.config.microprofile-config-api-2.0.jar org.eclipse.microprofile.context-propagation.microprofile-context-propagation-api-1.2.jar org.jboss.logging.jboss-logging-annotations-2.2.1.Final.jar org.jboss.slf4j.slf4j-jboss-logmanager-1.1.0.Final.jar org.jboss.spec.javax.xml.bind.jboss-jaxb-api_2.3_spec-2.0.0.Final.jar org.jboss.threads.jboss-threads-3.4.2.Final.jar org.slf4j.slf4j-api-1.7.33.jar generated-bytecode.jar quarkus-application.dat quarkus-app-dependencies.txt quarkus-run.jar]"}
{"level":"info","ts":1661354338.0336876,"logger":"camel-k.builder","msg":"artifacts selected: [camel-k-integration-1.8.2.jar io.quarkus.quarkus-bootstrap-runner-2.7.0.Final.jar io.quarkus.quarkus-development-mode-spi-2.7.0.Final.jar io.smallrye.common.smallrye-common-io-1.8.0.jar org.glassfish.jakarta.json-1.1.6.jar org.graalvm.sdk.graal-sdk-21.3.0.jar org.jboss.logging.jboss-logging-3.4.3.Final.jar org.jboss.logmanager.jboss-logmanager-embedded-1.0.9.jar org.wildfly.common.wildfly-common-1.5.4.Final-format-001.jar io.quarkus.arc.arc-2.7.0.Final.jar io.quarkus.quarkus-arc-2.7.0.Final.jar io.quarkus.quarkus-core-2.7.0.Final.jar io.quarkus.quarkus-fs-util-0.0.8.jar io.quarkus.quarkus-jsonp-2.7.0.Final.jar io.quarkus.quarkus-logging-json-2.7.0.Final.jar io.smallrye.common.smallrye-common-annotation-1.8.0.jar io.smallrye.common.smallrye-common-classloader-1.8.0.jar io.smallrye.common.smallrye-common-constraint-1.8.0.jar io.smallrye.common.smallrye-common-expression-1.8.0.jar io.smallrye.common.smallrye-common-function-1.8.0.jar io.smallrye.config.smallrye-config-2.8.2.jar io.smallrye.config.smallrye-config-common-2.8.2.jar io.smallrye.config.smallrye-config-core-2.8.2.jar jakarta.annotation.jakarta.annotation-api-1.3.5.jar jakarta.el.jakarta.el-api-3.0.3.jar jakarta.enterprise.jakarta.enterprise.cdi-api-2.0.2.jar jakarta.inject.jakarta.inject-api-1.0.jar jakarta.interceptor.jakarta.interceptor-api-1.2.5.jar jakarta.transaction.jakarta.transaction-api-1.3.3.jar org.apache.camel.camel-api-3.14.1.jar org.apache.camel.camel-base-3.14.1.jar org.apache.camel.camel-base-engine-3.14.1.jar org.apache.camel.camel-bean-3.14.1.jar org.apache.camel.camel-componentdsl-3.14.1.jar org.apache.camel.camel-core-catalog-3.14.1.jar org.apache.camel.camel-core-engine-3.14.1.jar org.apache.camel.camel-core-languages-3.14.1.jar org.apache.camel.camel-core-model-3.14.1.jar org.apache.camel.camel-core-processor-3.14.1.jar org.apache.camel.camel-core-reifier-3.14.1.jar org.apache.camel.camel-dsl-support-3.14.1.jar org.apache.camel.camel-endpointdsl-3.14.1.jar org.apache.camel.camel-groovy-dsl-3.14.1.jar org.apache.camel.camel-groovy-dsl-common-3.14.1.jar org.apache.camel.camel-log-3.14.1.jar org.apache.camel.camel-main-3.14.1.jar org.apache.camel.camel-management-api-3.14.1.jar org.apache.camel.camel-microprofile-config-3.14.1.jar org.apache.camel.camel-support-3.14.1.jar org.apache.camel.camel-timer-3.14.1.jar org.apache.camel.camel-tooling-model-3.14.1.jar org.apache.camel.camel-util-3.14.1.jar org.apache.camel.camel-util-json-3.14.1.jar org.apache.camel.k.camel-k-core-1.12.0.jar org.apache.camel.k.camel-k-core-api-1.12.0.jar org.apache.camel.k.camel-k-core-support-1.12.0.jar org.apache.camel.k.camel-k-runtime-1.12.0.jar org.apache.camel.quarkus.camel-quarkus-bean-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-core-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-groovy-dsl-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-log-2.7.0.jar org.apache.camel.quarkus.camel-quarkus-timer-2.7.0.jar org.codehaus.groovy.groovy-3.0.8.jar org.eclipse.microprofile.config.microprofile-config-api-2.0.jar org.eclipse.microprofile.context-propagation.microprofile-context-propagation-api-1.2.jar org.jboss.logging.jboss-logging-annotations-2.2.1.Final.jar org.jboss.slf4j.slf4j-jboss-logmanager-1.1.0.Final.jar org.jboss.spec.javax.xml.bind.jboss-jaxb-api_2.3_spec-2.0.0.Final.jar org.jboss.threads.jboss-threads-3.4.2.Final.jar org.slf4j.slf4j-api-1.7.33.jar generated-bytecode.jar quarkus-application.dat quarkus-app-dependencies.txt quarkus-run.jar]"}
{"level":"info","ts":1661354338.0337095,"logger":"camel-k.builder","msg":"base image: docker-registry-ip-address:port/adoptopenjdk/openjdk11:slim"}
{"level":"info","ts":1661354338.0337145,"logger":"camel-k.builder","msg":"resolved base image: docker-registry-ip-address:port/adoptopenjdk/openjdk11:slim"}
{"level":"info","ts":1661354338.0535636,"logger":"camel-k","msg":"spectrum - 2022/08/24 15:18:58 Pulling base image docker-registry-ip-address:port/adoptopenjdk/openjdk11:slim (insecure=true)..."}
{"level":"error","ts":1661354338.0563807,"logger":"camel-k.controller.build","msg":"Build kit-cc342j733h5ijhup6eug failed: could not pull base image image docker-registry-ip-address:port/adoptopenjdk/openjdk11:slim: GET http://docker-registry-ip-address:port/v2/: unexpected status code 400 Bad Request: Client sent an HTTP request to an HTTPS server.\n","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug","api-version":"camel.apache.org/v1","kind":"Build","ns":"camel-k","name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.0701246,"logger":"camel-k.controller.build","msg":"state transition","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug","api-version":"camel.apache.org/v1","kind":"Build","ns":"camel-k","name":"kit-cc342j733h5ijhup6eug","phase-from":"Running","phase-to":"Failed"}
{"level":"info","ts":1661354338.0702064,"logger":"camel-k","msg":"Cannot get information about the creator Integration &ObjectReference{Kind:Integration,Namespace:camel-k,Name:log-test-route,UID:,APIVersion:camel.apache.org/v1,ResourceVersion:,FieldPath:,}: Integration.camel.apache.org \"log-test-route\" not found"}
{"level":"info","ts":1661354338.0712597,"logger":"camel-k.controller.integrationkit","msg":"Reconciling IntegrationKit","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.0713434,"logger":"camel-k.controller.integrationkit","msg":"Invoking action build","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug","api-version":"camel.apache.org/v1","kind":"IntegrationKit","ns":"camel-k","name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.0712883,"logger":"camel-k.controller.build","msg":"Reconciling Build","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.0714726,"logger":"camel-k.controller.build","msg":"Invoking action error-recovery","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug","api-version":"camel.apache.org/v1","kind":"Build","ns":"camel-k","name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.5266187,"logger":"camel-k.controller.build","msg":"Reconciling Build","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug"}
{"level":"info","ts":1661354338.5270143,"logger":"camel-k.controller.build","msg":"Invoking action error-recovery","request-namespace":"camel-k","request-name":"kit-cc342j733h5ijhup6eug","api-version":"camel.apache.org/v1","kind":"Build","ns":"camel-k","name":"kit-cc342j733h5ijhup6eug"}

I dont understand why the base image request uses http, because pulling the camel-k image works: image: 10.137.7.97:5000/docker.io/apache/camel-k:1.8.2. Also, when using the default base image, https is used:

{"level":"error","ts":1661429578.7030427,"logger":"camel-k.controller.build","msg":"Build kit-cc3mefiacahpbv31preg failed: could not pull base image image adoptopenjdk/openjdk11:slim: Get \"https://index.docker.io/v2/\": dial tcp 44.205.66.155:443: connect: connection refused","request-namespace":"camel-k","request-name":"kit-cc3mefiacahpbv31preg","api-version":"camel.apache.org/v1","kind":"Build","ns":"camel-k","name":"kit-cc3mefiacahpbv31preg"}

I also changed between: insecure: false and insecure: true.

The host machine has this insecure registry (self signed certs) added in daemon.json

The test route test-route.groovy:

from('timer:tick?period=3000')
  .setBody().constant('Hello world from Camel K')
  .to('log:info')

Then:
kamel run ./test-route.groovy --namespace $namespace

Thanks for your help

Greetings

@MeranaTona
Copy link
Author

It got fixed by replacing the IP with an URL. E.g.:
baseImage: docker-registry-address/adoptopenjdk/openjdk11:slim

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant