From 306b7fe3521714510737ec6ef2e82583a070cc5f Mon Sep 17 00:00:00 2001 From: transparentChange Date: Thu, 7 Aug 2025 18:09:21 -0400 Subject: [PATCH 1/4] Improve Dockerfile and use it in docker-compose --- docker/app/Dockerfile | 5 +---- docker/docker-compose.yml | 4 +++- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/docker/app/Dockerfile b/docker/app/Dockerfile index f22e6f7d01..1c1e10381c 100644 --- a/docker/app/Dockerfile +++ b/docker/app/Dockerfile @@ -1,8 +1,5 @@ -FROM postgres:13.21-alpine3.22 +FROM eclipse-temurin:21-alpine -ENTRYPOINT [] - -RUN apk --no-cache add openjdk21 RUN apk --no-cache add libxml2 ############# diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 3753a3a7c8..d9456e1e88 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -6,7 +6,9 @@ services: environment: - POSTGRES_PASSWORD=postgres app: - image: tolgee/tolgee + build: + context: ../build/docker + dockerfile: Dockerfile ports: - ${exposePort}:8080 env_file: From 52a59cf9fd50811f3271c03f4f1fdc6bdb02db98 Mon Sep 17 00:00:00 2001 From: transparentChange Date: Thu, 7 Aug 2025 18:17:58 -0400 Subject: [PATCH 2/4] Fix bash --- docker/app/Dockerfile | 2 +- docker/app/cmd.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/app/Dockerfile b/docker/app/Dockerfile index 1c1e10381c..e0bedc3c7e 100644 --- a/docker/app/Dockerfile +++ b/docker/app/Dockerfile @@ -1,6 +1,6 @@ FROM eclipse-temurin:21-alpine -RUN apk --no-cache add libxml2 +RUN apk --no-cache add libxml2 bash ############# ### Tolgee # diff --git a/docker/app/cmd.sh b/docker/app/cmd.sh index 27a52ccae4..796e5f5f34 100644 --- a/docker/app/cmd.sh +++ b/docker/app/cmd.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/bin/sh ARCH=`uname -m` if [ "$ARCH" = "aarch64" ]; then From b389e3871823a92e839afa8d8b29c512849d16b8 Mon Sep 17 00:00:00 2001 From: transparentChange Date: Thu, 7 Aug 2025 18:30:13 -0400 Subject: [PATCH 3/4] Use external postgresql --- docker/.env | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docker/.env b/docker/.env index da13cdcad5..aee6cec27f 100644 --- a/docker/.env +++ b/docker/.env @@ -2,4 +2,5 @@ exposePort=8091 ########## DB ############## spring.datasource.url=jdbc:postgresql://db:5432/postgres spring.datasource.username=postgres -spring.datasource.password=postgres \ No newline at end of file +spring.datasource.password=postgres +TOLGEE_POSTGRES_AUTOSTART_ENABLED=false \ No newline at end of file From dfe02341fc7c5350d8786da149789860ed70b6a3 Mon Sep 17 00:00:00 2001 From: transparentChange Date: Thu, 7 Aug 2025 18:35:13 -0400 Subject: [PATCH 4/4] Revert to using base image --- docker/app/Dockerfile | 7 +++++-- docker/app/Dockerfile.lite | 35 +++++++++++++++++++++++++++++++++++ docker/docker-compose.yml | 7 ++++--- 3 files changed, 44 insertions(+), 5 deletions(-) create mode 100644 docker/app/Dockerfile.lite diff --git a/docker/app/Dockerfile b/docker/app/Dockerfile index e0bedc3c7e..f22e6f7d01 100644 --- a/docker/app/Dockerfile +++ b/docker/app/Dockerfile @@ -1,6 +1,9 @@ -FROM eclipse-temurin:21-alpine +FROM postgres:13.21-alpine3.22 -RUN apk --no-cache add libxml2 bash +ENTRYPOINT [] + +RUN apk --no-cache add openjdk21 +RUN apk --no-cache add libxml2 ############# ### Tolgee # diff --git a/docker/app/Dockerfile.lite b/docker/app/Dockerfile.lite new file mode 100644 index 0000000000..aee8f54726 --- /dev/null +++ b/docker/app/Dockerfile.lite @@ -0,0 +1,35 @@ +FROM eclipse-temurin:21-alpine + +RUN apk --no-cache add libxml2 bash + +############# +### Tolgee # +############# + +# Expose application port +EXPOSE 8080 + +# Define persistent volume for data storage +VOLUME /data + +# Environment variables for configuration +ENV HEALTHCHECK_PORT=8080 \ + spring_profiles_active=docker + +# Copy necessary application files +COPY BOOT-INF/lib /app/lib +COPY META-INF /app/META-INF +COPY BOOT-INF/classes /app +COPY --chmod=755 cmd.sh /app + +################# +### Let's go ## +################# + +# Define the startup command +ENTRYPOINT ["/app/cmd.sh"] + + +# Health check to ensure the app is up and running +HEALTHCHECK --interval=10s --timeout=3s --retries=20 \ + CMD wget --spider -q "http://127.0.0.1:$HEALTHCHECK_PORT/actuator/health" || exit 1 diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index d9456e1e88..55a8d3be4d 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -6,9 +6,10 @@ services: environment: - POSTGRES_PASSWORD=postgres app: - build: - context: ../build/docker - dockerfile: Dockerfile + image: tolgee/tolgee + #build: + # context: ../build/docker + # dockerfile: Dockerfile.lite ports: - ${exposePort}:8080 env_file: