This is an automated email from the ASF dual-hosted git repository.

marat pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git

commit 052b278fe0cd429b6ed4fe320c7ca229f2b61fa1
Author: Marat Gubaidullin <[email protected]>
AuthorDate: Wed Sep 6 14:11:14 2023 -0400

    Karavan in Docker for #817
---
 karavan-web/karavan-app/pom.xml                    |  4 +++
 .../karavan-app/src/main/docker/Dockerfile.jvm     | 12 ++++-----
 .../camel/karavan/docker/DockerEventListener.java  | 14 ++--------
 .../camel/karavan/docker/DockerForKaravan.java     | 31 +++++++++++++++-------
 .../apache/camel/karavan/docker/DockerService.java | 15 ++++++-----
 .../camel/karavan/kubernetes/PodEventHandler.java  |  3 +--
 .../apache/camel/karavan/service/CamelService.java | 10 +------
 .../apache/camel/karavan/service/EventService.java |  3 ---
 .../apache/camel/karavan/service/GiteaService.java | 13 ++++++---
 .../camel/karavan/service/ProjectService.java      | 19 +++++++------
 .../src/main/resources/application.properties      | 12 ++++++---
 .../snippets/camel-main-builder-script-docker.sh   |  1 -
 .../camel-main-docker-application.properties       |  1 +
 13 files changed, 71 insertions(+), 67 deletions(-)

diff --git a/karavan-web/karavan-app/pom.xml b/karavan-web/karavan-app/pom.xml
index 47e6dae3..fbf4dcad 100644
--- a/karavan-web/karavan-app/pom.xml
+++ b/karavan-web/karavan-app/pom.xml
@@ -131,6 +131,10 @@
             <groupId>io.quarkus</groupId>
             <artifactId>quarkus-container-image-docker</artifactId>
         </dependency>
+        <dependency>
+            <groupId>io.quarkus</groupId>
+            <artifactId>quarkus-container-image-jib</artifactId>
+        </dependency>
         <dependency>
             <groupId>io.quarkiverse.quinoa</groupId>
             <artifactId>quarkus-quinoa</artifactId>
diff --git a/karavan-web/karavan-app/src/main/docker/Dockerfile.jvm 
b/karavan-web/karavan-app/src/main/docker/Dockerfile.jvm
index 4f7e95a5..12684d5d 100644
--- a/karavan-web/karavan-app/src/main/docker/Dockerfile.jvm
+++ b/karavan-web/karavan-app/src/main/docker/Dockerfile.jvm
@@ -1,9 +1,7 @@
-FROM registry.access.redhat.com/ubi8/openjdk-17:1.16
-ENV LANGUAGE='en_US:en'
-COPY --chown=185 target/*-runner.jar /deployments/quarkus-run.jar
-EXPOSE 8080
-USER 185
+FROM eclipse-temurin:17.0.8.1_1-jdk
+RUN mkdir /opt/app
+COPY target/*-runner.jar /opt/app/karavan.jar
 ENV JAVA_OPTS="-Dquarkus.http.host=0.0.0.0 
-Djava.util.logging.manager=org.jboss.logmanager.LogManager"
-ENV JAVA_APP_JAR="/deployments/quarkus-run.jar"
-ENTRYPOINT [ "/opt/jboss/container/java/run/run-java.sh" ]
+EXPOSE 8080
+CMD ["java", "-jar", "/opt/app/karavan.jar"]
 
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerEventListener.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerEventListener.java
index 0af06f22..6dda84c0 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerEventListener.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerEventListener.java
@@ -22,20 +22,11 @@ import static org.apache.camel.karavan.shared.Constants.*;
 @ApplicationScoped
 public class DockerEventListener implements ResultCallback<Event> {
 
-    @ConfigProperty(name = "karavan.image-registry")
-    String registry;
-    @ConfigProperty(name = "karavan.image-group")
-    String group;
-    @ConfigProperty(name = "karavan.image-registry-username")
-    Optional<String> username;
-    @ConfigProperty(name = "karavan.image-registry-password")
-    Optional<String> password;
-
     @Inject
     DockerService dockerService;
 
     @Inject
-    EventBus eventBus;
+    DockerForKaravan dockerForKaravan;
 
     @Inject
     InfinispanService infinispanService;
@@ -67,8 +58,7 @@ public class DockerEventListener implements 
ResultCallback<Event> {
                     && Objects.equals(container.getLabels().get(LABEL_TYPE), 
ContainerStatus.ContainerType.build.name())) {
                 String tag = container.getLabels().get(LABEL_TAG);
                 String projectId = container.getLabels().get(LABEL_PROJECT_ID);
-                String image = registry + "/" + group + "/" + projectId + ":" 
+ tag;
-                dockerService.pullImage(image);
+                dockerForKaravan.syncImage(projectId, tag);
             }
         }
     }
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java
index 41d15c7f..017c133f 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerForKaravan.java
@@ -22,11 +22,13 @@ import jakarta.enterprise.context.ApplicationScoped;
 import jakarta.inject.Inject;
 import org.apache.camel.karavan.docker.model.DockerComposeService;
 import org.apache.camel.karavan.infinispan.model.ContainerStatus;
+import org.apache.camel.karavan.shared.ConfigService;
 import org.eclipse.microprofile.config.inject.ConfigProperty;
 import org.jboss.logging.Logger;
 
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 
 import static org.apache.camel.karavan.shared.Constants.*;
 
@@ -38,10 +40,12 @@ public class DockerForKaravan {
     @ConfigProperty(name = "karavan.devmode.image")
     String devmodeImage;
 
-    @ConfigProperty(name = "karavan.infinispan.username")
-    String infinispanUsername;
-    @ConfigProperty(name = "karavan.infinispan.password")
-    String infinispanPassword;
+    @ConfigProperty(name = "karavan.image-registry-install-registry")
+    boolean installRegistry;
+    @ConfigProperty(name = "karavan.image-registry")
+    String registry;
+    @ConfigProperty(name = "karavan.image-group")
+    String group;
 
     @Inject
     DockerService dockerService;
@@ -65,29 +69,38 @@ public class DockerForKaravan {
         return dockerService.createContainer(projectId, devmodeImage,
                 env, ports, healthCheck,
                 Map.of(LABEL_TYPE, 
ContainerStatus.ContainerType.devmode.name(), LABEL_PROJECT_ID, projectId),
-                Map.of());
+                Map.of(), null);
 
     }
 
-    public void runBuildProject(String projectId, String script, Map<String, 
String> files, List<String> env, String tag) throws Exception {
+    public void runBuildProject(String projectId, String script, Map<String, 
String> files, List<String> env,  Map<String, String> volumes, String tag) 
throws Exception {
         dockerService.deleteContainer(projectId + BUILDER_SUFFIX);
-        Container c = createBuildContainer(projectId, env, tag);
+        Container c = createBuildContainer(projectId, env, volumes, tag);
         dockerService.copyFiles(c.getId(), "/code", files);
         dockerService.copyExecFile(c.getId(), "/karavan", "build.sh", script);
         dockerService.runContainer(projectId);
     }
 
-    protected Container createBuildContainer(String projectId, List<String> 
env, String tag) throws InterruptedException {
+    protected Container createBuildContainer(String projectId, List<String> 
env, Map<String, String> volumes, String tag) throws InterruptedException {
         LOGGER.infof("Starting Build Container for %s ", projectId);
 
         return dockerService.createContainer(projectId + BUILDER_SUFFIX, 
devmodeImage,
                 env, Map.of(), new HealthCheck(),
                 Map.of(LABEL_TYPE, ContainerStatus.ContainerType.build.name(), 
LABEL_PROJECT_ID, projectId, LABEL_TAG, tag),
-                Map.of(), "/karavan/build.sh");
+                volumes, null,"/karavan/build.sh");
     }
 
     public void createDevserviceContainer(DockerComposeService 
dockerComposeService) throws InterruptedException {
         LOGGER.infof("DevService starting for ", 
dockerComposeService.getContainer_name());
         dockerService.createContainerFromCompose(dockerComposeService, 
ContainerStatus.ContainerType.devservice);
     }
+
+    public void syncImage(String projectId, String tag) throws 
InterruptedException {
+        String registryUrl = registry;
+        if (ConfigService.inDocker() && installRegistry) {
+            registryUrl = "localhost:5555";
+        }
+        String image = registryUrl + "/" + group + "/" + projectId + ":" + tag;
+        dockerService.pullImage(image);
+    }
 }
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java
index fcbee5a4..d1c717fa 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/docker/DockerService.java
@@ -45,6 +45,7 @@ import java.time.Instant;
 import java.util.*;
 import java.util.stream.Collectors;
 
+import static org.apache.camel.karavan.shared.Constants.LABEL_PROJECT_ID;
 import static org.apache.camel.karavan.shared.Constants.LABEL_TYPE;
 
 @ApplicationScoped
@@ -152,7 +153,7 @@ public class DockerService extends DockerServiceUtils {
             LOGGER.infof("Compose Service started for %s", 
compose.getContainer_name());
 
             return createContainer(compose.getContainer_name(), 
compose.getImage(),
-                    env, compose.getPortsMap(), healthCheck, 
Map.of(LABEL_TYPE, type.name()), Map.of());
+                    env, compose.getPortsMap(), healthCheck, 
Map.of(LABEL_TYPE, type.name()), Map.of(), NETWORK_NAME);
 
         } else {
             LOGGER.info("Compose Service already exists: " + 
containers.get(0).getId());
@@ -162,7 +163,7 @@ public class DockerService extends DockerServiceUtils {
 
     public Container createContainer(String name, String image, List<String> 
env, Map<Integer, Integer> ports,
                                      HealthCheck healthCheck, Map<String, 
String> labels,
-                                     Map<String, String> volumes, String... 
command) throws InterruptedException {
+                                     Map<String, String> volumes, String 
network, String... command) throws InterruptedException {
         List<Container> containers = 
getDockerClient().listContainersCmd().withShowAll(true).withNameFilter(List.of(name)).exec();
         if (containers.size() == 0) {
             pullImage(image);
@@ -181,11 +182,13 @@ public class DockerService extends DockerServiceUtils {
             if (command.length > 0) {
                 createContainerCmd.withCmd(command);
             }
-
+            if (Objects.equals(labels.get(LABEL_PROJECT_ID), 
ContainerStatus.ContainerType.build.name())) {
+                mounts.add(new 
Mount().withType(MountType.BIND).withSource("/var/run/docker.sock").withTarget("/var/run/docker.sock"));
+            }
             createContainerCmd.withHostConfig(new HostConfig()
                     .withPortBindings(portBindings)
                             .withMounts(mounts)
-                    .withNetworkMode(NETWORK_NAME));
+                    .withNetworkMode(network != null ? network : 
NETWORK_NAME));
 
             CreateContainerResponse response = createContainerCmd.exec();
             LOGGER.info("Container created: " + response.getId());
@@ -338,9 +341,9 @@ public class DockerService extends DockerServiceUtils {
         List<String> tags = images.stream()
                 .map(i -> 
Arrays.stream(i.getRepoTags()).collect(Collectors.toList()))
                 .flatMap(Collection::stream)
-                .collect(Collectors.toList());
+                .toList();
 
-        if (!images.stream().filter(i -> 
tags.contains(image)).findFirst().isPresent()) {
+        if (!images.stream().anyMatch(i -> tags.contains(image))) {
             ResultCallback.Adapter<PullResponseItem> pull = 
getDockerClient().pullImageCmd(image).start().awaitCompletion();
         }
     }
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/PodEventHandler.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/PodEventHandler.java
index 3a684ef9..bdd9a7cd 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/PodEventHandler.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/PodEventHandler.java
@@ -19,7 +19,6 @@ import static 
org.apache.camel.karavan.service.CodeService.DEFAULT_CONTAINER_RES
 import static org.apache.camel.karavan.shared.Constants.LABEL_PROJECT_ID;
 import static org.apache.camel.karavan.shared.Constants.RELOAD_TRY_COUNT;
 import static org.apache.camel.karavan.shared.EventType.CONTAINER_STATUS;
-import static 
org.apache.camel.karavan.shared.EventType.DEVMODE_CONTAINER_READY;
 
 public class PodEventHandler implements ResourceEventHandler<Pod> {
 
@@ -60,7 +59,7 @@ public class PodEventHandler implements 
ResourceEventHandler<Pod> {
                                 LABEL_PROJECT_ID, ps.getProjectId(),
                                 RELOAD_TRY_COUNT, 1
                         );
-                        eventBus.publish(DEVMODE_CONTAINER_READY, 
JsonObject.mapFrom(message));
+//                        eventBus.publish(DEVMODE_CONTAINER_READY, 
JsonObject.mapFrom(message));
                     }
                 }
             }
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/CamelService.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/CamelService.java
index 44783740..ef96461b 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/CamelService.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/CamelService.java
@@ -129,8 +129,7 @@ public class CamelService {
         if (ConfigService.inKubernetes()) {
             return "http://"; + containerName + "." + 
kubernetesService.getNamespace() + ".svc.cluster.local";
         } else if (ConfigService.inDocker()) {
-            Integer port = projectService.getProjectPort(containerName);
-            return "http://"; + containerName + ":" + port;
+            return "http://"; + containerName + ":8080";
         } else {
             Integer port = projectService.getProjectPort(containerName);
             return "http://localhost:"; + port;
@@ -155,13 +154,6 @@ public class CamelService {
     public void collectCamelStatuses(JsonObject data) {
         CamelStatusRequest dms = data.mapTo(CamelStatusRequest.class);
         String projectId = dms.getProjectId();
-        if (infinispanService.getCamelStatus(projectId, environment, 
CamelStatus.Name.context.name()) == null) {
-            Map<String, Object> message = Map.of(
-                    LABEL_PROJECT_ID, projectId,
-                    RELOAD_TRY_COUNT, 1
-            );
-            eventBus.publish(DEVMODE_CONTAINER_READY, 
JsonObject.mapFrom(message));
-        }
         Arrays.stream(CamelStatus.Name.values()).forEach(statusName -> {
             String containerName = dms.getContainerName();
             String status = getCamelStatus(containerName, statusName);
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/EventService.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/EventService.java
index b1a9ee10..eb7a1302 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/EventService.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/EventService.java
@@ -40,9 +40,6 @@ public class EventService {
     }
 
     private void saveContainerStatus(ContainerStatus newStatus, 
ContainerStatus oldStatus) {
-        if (newStatus.getProjectId().equals("demo")) {
-            System.out.println(("oldStatus.getFinished = " + 
Objects.isNull(oldStatus.getFinished())));
-        }
         if ("exited".equalsIgnoreCase(newStatus.getState()) && 
Objects.isNull(oldStatus.getFinished())) {
             newStatus.setFinished(Instant.now().toString());
         } else if ("exited".equalsIgnoreCase(newStatus.getState()) && 
Objects.nonNull(oldStatus.getFinished())) {
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/GiteaService.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/GiteaService.java
index 1930be7c..469986e3 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/GiteaService.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/GiteaService.java
@@ -24,6 +24,7 @@ import io.vertx.mutiny.ext.web.client.WebClient;
 import jakarta.enterprise.context.ApplicationScoped;
 import jakarta.inject.Inject;
 import org.apache.camel.karavan.infinispan.model.GitConfig;
+import org.apache.camel.karavan.shared.ConfigService;
 import org.eclipse.microprofile.faulttolerance.Retry;
 import org.jboss.logging.Logger;
 
@@ -55,7 +56,7 @@ public class GiteaService {
     @Retry(maxRetries = 100, delay = 2000)
     public void install() throws Exception {
         LOGGER.info("Install Gitea");
-        HttpResponse<Buffer> result = 
getWebClient().postAbs("http://localhost:3000";).timeout(1000)
+        HttpResponse<Buffer> result = 
getWebClient().postAbs(getGiteaBaseUrl()).timeout(1000)
                 .putHeader("Content-Type", "application/x-www-form-urlencoded")
                 .sendBuffer(Buffer.buffer(
                         
"db_type=sqlite3&db_host=localhost%3A3306&db_user=root&db_passwd=&db_name=gitea"
 +
@@ -78,7 +79,7 @@ public class GiteaService {
     public void createRepository() throws Exception {
         LOGGER.info("Creating Gitea Repository");
         String token = generateToken();
-        HttpResponse<Buffer> result = 
getWebClient().postAbs("http://localhost:3000/api/v1/user/repos";).timeout(500)
+        HttpResponse<Buffer> result = getWebClient().postAbs(getGiteaBaseUrl() 
+ "/api/v1/user/repos").timeout(500)
                 .putHeader("Content-Type", "application/json")
                 .bearerTokenAuthentication(token)
                 .sendJsonObject(new JsonObject(Map.of(
@@ -109,7 +110,7 @@ public class GiteaService {
         }
         LOGGER.info("Creating Gitea User Token");
         GitConfig config = gitService.getGitConfig();
-        HttpResponse<Buffer> result = 
getWebClient().postAbs("http://localhost:3000/api/v1/users/"; + 
config.getUsername() + "/tokens").timeout(500)
+        HttpResponse<Buffer> result = getWebClient().postAbs(getGiteaBaseUrl() 
+ "/api/v1/users/" + config.getUsername() + "/tokens").timeout(500)
                 .putHeader("Content-Type", "application/json")
                 .putHeader("accept", "application/json")
                 .basicAuthentication(config.getUsername(), 
config.getPassword())
@@ -133,7 +134,7 @@ public class GiteaService {
         LOGGER.info("Deleting Gitea User Token");
         GitConfig config = gitService.getGitConfig();
         HttpResponse<Buffer> result = getWebClient()
-                .deleteAbs("http://localhost:3000/api/v1/users/"; + 
config.getUsername() + "/tokens/" + token)
+                .deleteAbs(getGiteaBaseUrl() + "/api/v1/users/" + 
config.getUsername() + "/tokens/" + token)
                 .timeout(500)
                 .putHeader("Content-Type", "application/json")
                 .putHeader("accept", "application/json")
@@ -143,4 +144,8 @@ public class GiteaService {
             LOGGER.info("Deleted Gitea User Token");
         }
     }
+
+    private String getGiteaBaseUrl(){
+        return ConfigService.inDocker() ? "http://gitea:3000"; : 
"http://localhost:3000";;
+    }
 }
\ No newline at end of file
diff --git 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
index d3489247..00123f52 100644
--- 
a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
+++ 
b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.karavan.service;
 
-import io.smallrye.mutiny.tuples.Tuple2;
 import io.vertx.core.json.JsonObject;
 import io.vertx.mutiny.core.eventbus.EventBus;
 import org.apache.camel.karavan.docker.DockerForKaravan;
@@ -59,11 +58,8 @@ public class ProjectService implements HealthCheck {
     @ConfigProperty(name = "karavan.environment")
     String environment;
 
-    @ConfigProperty(name = "karavan.git-install-gitea")
-    boolean installGitea;
-
-    @ConfigProperty(name = "karavan.image-registry-install-registry")
-    boolean installRegistry;
+    @ConfigProperty(name = "karavan.maven.cache")
+    Optional<String> mavenCache;
 
     @ConfigProperty(name = "karavan.image-registry")
     String registry;
@@ -143,7 +139,10 @@ public class ProjectService implements HealthCheck {
 
             String tag = Instant.now().toString().substring(0, 
19).replace(":", "-");
             List<String> env = getEnvForBuild(project, tag);
-            dockerForKaravan.runBuildProject(project.getProjectId(), script, 
files, env, tag);
+            Map<String, String> volumes = mavenCache
+                    .map(s -> Map.of(s, "/root/.m2"))
+                    .orElseGet(Map::of);
+            dockerForKaravan.runBuildProject(project.getProjectId(), script, 
files, env, volumes, tag);
             return project.getProjectId();
         }
     }
@@ -151,17 +150,17 @@ public class ProjectService implements HealthCheck {
     private List<String> getEnvForBuild(Project project, String tag) {
         GitConfig gitConfig = gitService.getGitConfig();
         List<String> env = List.of(
-                "GIT_REPOSITORY=" + (installGitea ? 
gitConfig.getUri().replace("localhost", "gitea") : gitConfig.getUri()),
+                "GIT_REPOSITORY=" + gitConfig.getUri(),
                 "GIT_USERNAME=" + gitConfig.getUsername(),
                 "GIT_PASSWORD=" + gitConfig.getPassword(),
                 "GIT_BRANCH=" + gitConfig.getBranch(),
                 "PROJECT_ID=" + project.getProjectId(),
-                "IMAGE_REGISTRY=" + (installRegistry ? "registry:5000" : 
registry),
+                "IMAGE_REGISTRY=" + registry,
                 "IMAGE_REGISTRY_USERNAME=" + username,
                 "IMAGE_REGISTRY_PASSWORD=" + password,
                 "IMAGE_GROUP=" + group,
+                "JBANG_REPO=~/.m2",
                 "TAG=" + tag
-
         );
         return env;
     }
diff --git a/karavan-web/karavan-app/src/main/resources/application.properties 
b/karavan-web/karavan-app/src/main/resources/application.properties
index d8b07ccf..6200868d 100644
--- a/karavan-web/karavan-app/src/main/resources/application.properties
+++ b/karavan-web/karavan-app/src/main/resources/application.properties
@@ -7,16 +7,17 @@ karavan.camel.status.interval=2s
 karavan.container.status.interval=2s
 karavan.container.statistics.interval=10s
 karavan.devmode.image=ghcr.io/apache/camel-karavan-devmode:4.0.0-RC2
+karavan.maven.cache=
 
 # Git repository Configuration
-karavan.git-repository=http://localhost:3000/karavan/karavan.git
+karavan.git-repository=http://gitea:3000/karavan/karavan.git
 karavan.git-username=karavan
 karavan.git-password=karavan
 karavan.git-branch=main
 karavan.git-install-gitea=true
 
 # Image registry configuration
-karavan.image-registry=localhost:5555
+karavan.image-registry=registry:5000
 karavan.image-group=karavan
 karavan.image-registry-username=
 karavan.image-registry-password=
@@ -28,7 +29,7 @@ karavan.infinispan.port=11222:11222
 # Infinispan connection config
 karavan.infinispan.username=admin
 karavan.infinispan.password=karavan
-karavan.infinispan.hosts=localhost:11222
+karavan.infinispan.hosts=infinispan:11222
 
 quarkus.infinispan-client.devservices.enabled=false
 quarkus.infinispan-client.devservices.service-name=infinispan
@@ -101,8 +102,11 @@ quarkus.http.enable-compression=true
 quarkus.log.level=INFO
 quarkus.banner.enabled=false
 quarkus.package.type=uber-jar
-quarkus.docker.dockerfile-jvm-path=src/main/docker/Dockerfile.distroless
+quarkus.docker.dockerfile-jvm-path=src/main/docker/Dockerfile.jvm
+#quarkus.docker.dockerfile-jvm-path=src/main/docker/Dockerfile.distroless
 quarkus.container-image.builder=docker
+#quarkus.jib.base-jvm-image=eclipse-temurin:17.0.8.1_1-jdk
+#quarkus.jib.ports=8080
 
 quarkus.qute.strict-rendering=false
 quarkus.qute.property-not-found-strategy=output-original
diff --git 
a/karavan-web/karavan-app/src/main/resources/snippets/camel-main-builder-script-docker.sh
 
b/karavan-web/karavan-app/src/main/resources/snippets/camel-main-builder-script-docker.sh
index 207520cc..037632f8 100644
--- 
a/karavan-web/karavan-app/src/main/resources/snippets/camel-main-builder-script-docker.sh
+++ 
b/karavan-web/karavan-app/src/main/resources/snippets/camel-main-builder-script-docker.sh
@@ -13,7 +13,6 @@ then
   replacer=http://${GIT_USERNAME}:${GIT_PASSWORD}@
       prefix=http://
       url="${GIT_REPOSITORY/$prefix/$replacer}"
-      echo url
       git clone --depth 1 --branch ${GIT_BRANCH} $url ${CHECKOUT_DIR}
 else
     git clone --depth 1 --branch ${GIT_BRANCH} ${GIT_REPOSITORY} 
${CHECKOUT_DIR}
diff --git 
a/karavan-web/karavan-app/src/main/resources/snippets/camel-main-docker-application.properties
 
b/karavan-web/karavan-app/src/main/resources/snippets/camel-main-docker-application.properties
index 775e3033..5048638c 100644
--- 
a/karavan-web/karavan-app/src/main/resources/snippets/camel-main-docker-application.properties
+++ 
b/karavan-web/karavan-app/src/main/resources/snippets/camel-main-docker-application.properties
@@ -11,3 +11,4 @@ camel.server.enabled=true
 camel.server.healthCheckEnabled=true
 camel.server.devConsoleEnabled=true
 jkube.version=1.13.1
+jib.from.image=gcr.io/distroless/java17@sha256:3a4ea21bd7b412b8b6ae61313b39337d8f03bb6844013810e8e4625d8c765edb

Reply via email to