Fix merge full and lite version in dockerfile and CI tests

Docker run Kustvakt full version by default. Run with argument --lite to
activate the lite version.

Change-Id: Iccdc21fcfcd439aca078751a738d007f098c5027
diff --git a/.github/workflows/ci_test.yml b/.github/workflows/ci_test.yml
index 4c6723f..36e3a65 100644
--- a/.github/workflows/ci_test.yml
+++ b/.github/workflows/ci_test.yml
@@ -42,4 +42,4 @@
         run: mvn --file Koral/pom.xml install
 
       - name: Build and package Kustvakt
-        run: mvn clean --file Kustvakt/pom.xml package      
\ No newline at end of file
+        run: mvn clean --file Kustvakt/pom.xml package
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b0ac593..02fa71c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -23,7 +23,7 @@
     - apk update
     - apk add --no-cache git
   script:
-    - docker build -f Dockerfile -t korap/kustvakt:$VID -t korap/kustvakt:latest .
+    - docker build -f Dockerfile -t korap/kustvakt:$VID .
     - docker save korap/kustvakt:$VID | xz -T0 -M16G -9 > kustvakt.tar.xz
   artifacts:
     paths:
diff --git a/Dockerfile b/Dockerfile
index 1663273..4024c72 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,18 +1,16 @@
+# *** WARNING *** This Dockerfile has been updated to build one image that can run both full and lite versions. The changes require updating existing docker compose files accordingly.
+
 # Use alpine linux as base image
 FROM eclipse-temurin:22-jdk-alpine AS builder
-
 # Copy repository respecting .dockerignore
 COPY . /kustvakt
-
 WORKDIR /kustvakt
-
 RUN apk update && \
     apk add --no-cache git \
             curl \
             perl \
             wget \
             maven
-
 RUN git config --global user.email "korap+docker@ids-mannheim.de" && \
     git config --global user.name "Docker"
 
@@ -24,16 +22,7 @@
     unzip *.zip && \
     cd Koral-* && \
     mvn clean install
-
 RUN rm -r Koral-* v*.zip
-    
-#RUN curl -L -o koral-head.zip https://github.com/KorAP/Koral/archive/HEAD.zip && \
-#    unzip koral-head.zip && \
-#    cd Koral-* && \
-#    mvn clean install && \
-#    cd /kustvakt && \
-#    rm -rf Koral-* koral-head.zip
-    
 RUN mkdir built
 
 # Install Krill
@@ -46,79 +35,69 @@
     mvn clean install && \
     mvn -Dmaven.test.skip=true package && \
     mv target/Krill-Indexer.jar /kustvakt/built/Krill-Indexer.jar
-
 RUN rm -r Krill-* v*.zip
 
-
 # Kustvakt
-RUN mvn clean package -DskipTests=true && \
+RUN mvn clean package && \
     find target/Kustvakt-*.jar -exec mv {} /kustvakt/built/Kustvakt.jar ';'
-
- RUN sed 's!\(krill\.indexDir\s*=\).\+!\1\/kustvakt\/index!' src/main/resources/kustvakt-lite.conf \
+RUN sed 's!\(krill\.indexDir\s*=\).\+!\1\/kustvakt\/index!' src/main/resources/kustvakt-lite.conf \
     > built/kustvakt-lite.conf
-
- RUN cat src/main/resources/kustvakt.conf | \
+RUN cat src/main/resources/kustvakt.conf | \
     sed 's!\(krill\.indexDir\s*=\).\+!\1\/kustvakt\/index!' | \
     sed 's!\(ldap\.config\s*=\).\+!\1\/kustvakt\/ldap\/ldap\.conf!' | \
     sed 's!\(oauth2\.initial\.super\.client\s*=\).\+!\1\/true!' | \
     sed '$ a oauth2.initial.super.client = true' \
     > built/kustvakt.conf
-
 RUN sed  's!\(ldifFile\s*=\).\+!\1\/kustvakt\/ldap\/ldap.ldif!' \
     src/main/resources/embedded-ldap-example.conf \
     > built/ldap.conf
-
 RUN cat src/main/resources/example-users.ldif \
     > built/ldap.ldif
-
 RUN apk del git \
             perl \
             curl \
             wget \
             maven
-
 RUN cd ${M2_HOME} && rm -r .m2
 
 # Cleanup
 RUN rm -r src && \
     rm -r wiki-index
 
-FROM eclipse-temurin:22-jre-alpine AS example-index
 
+FROM busybox:latest AS example-index
 WORKDIR /kustvakt
-
 RUN addgroup -S korap && \
     adduser -S kustvakt -G korap && \
     mkdir kustvakt && \
-    chown -R kustvakt.korap /kustvakt
-
+    chown -R kustvakt:korap /kustvakt
 COPY --from=builder /kustvakt/sample-index /kustvakt/index
+USER kustvakt
+CMD ["sh"]
+
 
 FROM eclipse-temurin:22-jre-alpine AS kustvakt
-
 RUN addgroup -S korap && \
     adduser -S kustvakt -G korap && \
     mkdir kustvakt && \
     chown -R kustvakt.korap /kustvakt
-
 WORKDIR /kustvakt
-
 USER kustvakt
-
 RUN mkdir ./ldap && \
     mkdir ./client && \
     mkdir ./data
-
-COPY --from=builder /kustvakt/built/Kustvakt.jar /kustvakt/
+COPY --from=builder /kustvakt/built/Kustvakt.jar /kustvakt
 COPY --from=builder /kustvakt/built/kustvakt.conf /kustvakt/data/
 COPY --from=builder /kustvakt/built/kustvakt-lite.conf /kustvakt/data/
 COPY --from=builder /kustvakt/built/ldap.* /kustvakt/ldap/
 COPY --from=builder /kustvakt/built/Krill-Indexer.jar /kustvakt/
-
 EXPOSE 8089
-
-ENTRYPOINT [ "java", "-jar",  "/kustvakt/Kustvakt.jar"]
+ENTRYPOINT [ "java", "-jar"]
+CMD ["Kustvakt.jar"]
 
 # docker build -f Dockerfile -t korap/kustvakt:{nr} .
 # docker build -f Dockerfile -t korap/example-index:{nr} --target example-index .
-# docker run --rm --net host -v [absolute-path-sample-index]:/kustvakt/index -it korap/kustvakt:{nr} --lite
\ No newline at end of file
+# run full version
+# docker run --rm --net host -v [absolute-path-sample-index]:/kustvakt/index korap/kustvakt:{nr}
+# run lite version 
+# docker run --rm --net host -v [absolute-path-sample-index]:/kustvakt/index korap/kustvakt:{nr} Kustvakt.jar --lite
\ No newline at end of file