From bb947d7aa7307f044fc0a990a13b55115e9b9696 Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 24 Feb 2024 20:03:53 +0100 Subject: [PATCH 1/5] Update build.yml --- .gitea/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index ecf6191..06336c7 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -3,7 +3,7 @@ name: SharePulse Build on: push: branches: - - main + - '**' jobs: build-jar: From f69fe389e794c78cabe5c09d6866e38f66956274 Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 24 Feb 2024 20:18:53 +0100 Subject: [PATCH 2/5] Added docker workflow configuration --- .gitea/workflows/build.yml | 17 ++++++++++++++++- Dockerfile | 10 ++++++---- docker-entrypoint.sh | 31 +++++++++++++++++++++++++++++++ 3 files changed, 53 insertions(+), 5 deletions(-) create mode 100644 docker-entrypoint.sh diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 06336c7..f909305 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -41,4 +41,19 @@ jobs: uses: actions/upload-artifact@v3 with: name: jar-artifact - path: build/libs/*.jar \ No newline at end of file + path: build/libs/*.jar + build-docker-image: + needs: build-jar + runs-on: ubuntu-22.04 + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Download Artifact + uses: actions/download-artifact@v3 + with: + name: jar-artifact + path: build/libs + + - name: Build Docker Image + run: docker build . -t sharepulse:latest \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d9ba0e6..2693ef9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,8 @@ FROM openjdk:23-jdk-slim LABEL authors="Walzen665" -VOLUME /tmp -ARG JAR_FILE -COPY ${JAR_FILE} app.jar -ENTRYPOINT ["java","-jar","/app.jar"] \ No newline at end of file +WORKDIR /app +COPY build/libs/*.jar /app/sharepulse.jar +COPY docker-entrypoint.sh /app/docker-entrypoint.sh +EXPOSE 80 +RUN chmod +x /app/docker-entrypoint.sh +ENTRYPOINT ["/app/docker-entrypoint.sh"] \ No newline at end of file diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh new file mode 100644 index 0000000..b95daaf --- /dev/null +++ b/docker-entrypoint.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +# Use environment variables or default values +RETHINKDB_HOST=${RETHINKDB_HOST:-localhost} +RETHINKDB_PORT=${RETHINKDB_PORT:-28015} +RETHINKDB_DATABASE=${RETHINKDB_DATABASE:-sharepulse} +SHAREPULSE_FILEPASSWORD_LENGTH=${SHAREPULSE_FILEPASSWORD_LENGTH:-6} +SHAREPULSE_FILEID_LENGTH=${SHAREPULSE_FILEID_LENGTH:-6} +SHAREPULSE_TEMP_FILESTORE_PATH=${SHAREPULSE_TEMP_FILESTORE_PATH:-/temp-filestore} +SHAREPULSE_AUTO_RESET_ON_STARTUP=${SHAREPULSE_AUTO_RESET_ON_STARTUP:-true} +MAX_FILE_SIZE=${MAX_FILE_SIZE:-1GB} +MAX_REQUEST_SIZE=${MAX_REQUEST_SIZE:-1GB} + +# Inject environment variables into application.properties or use SPRING_APPLICATION_JSON +export SPRING_APPLICATION_JSON=$(cat << EOF +{ + "rethinkdb.host": "$RETHINKDB_HOST", + "rethinkdb.port": $RETHINKDB_PORT, + "rethinkdb.database": "$RETHINKDB_DATABASE", + "sharepulse.filepassword.length": $SHAREPULSE_FILEPASSWORD_LENGTH, + "sharepulse.fileid.length": $SHAREPULSE_FILEID_LENGTH, + "sharepulse.temp-filestore-path": "$SHAREPULSE_TEMP_FILESTORE_PATH", + "sharepulse.auto-reset-on-startup": $SHAREPULSE_AUTO_RESET_ON_STARTUP, + "spring.servlet.multipart.max-file-size": "$MAX_FILE_SIZE", + "spring.servlet.multipart.max-request-size": "$MAX_REQUEST_SIZE" +} +EOF +) + +# Execute the jar file +exec java -jar sharepulse.jar \ No newline at end of file From 1c5ff602fab60c8af385ad7d49e6b2b5ec0f3b09 Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 24 Feb 2024 20:23:06 +0100 Subject: [PATCH 3/5] Update build.yml --- .gitea/workflows/build.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index f909305..a293b74 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -46,6 +46,19 @@ jobs: needs: build-jar runs-on: ubuntu-22.04 steps: + - name: Initialize Docker runtime + run: | + apt-get update + apt-get install ca-certificates curl gnupg lsb-release -y + install -m 0755 -d /etc/apt/keyrings + curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg + chmod a+r /etc/apt/keyrings/docker.gpg + echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ + $(lsb_release -cs) stable" | \ + tee /etc/apt/sources.list.d/docker.list > /dev/null + apt-get update + apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin -y - name: Checkout uses: actions/checkout@v4 From e67e0a6e2d62d406b3e979bb4e3dbed21ab42a3b Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 24 Feb 2024 20:57:27 +0100 Subject: [PATCH 4/5] Update build.yml --- .gitea/workflows/build.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index a293b74..eb8b430 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -59,6 +59,7 @@ jobs: tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin -y + - name: Checkout uses: actions/checkout@v4 @@ -69,4 +70,13 @@ jobs: path: build/libs - name: Build Docker Image - run: docker build . -t sharepulse:latest \ No newline at end of file + run: docker build . -t sharepulse:latest + + - name: Tag Docker image + run: docker tag walzen665/sharepulse:latest git.walzen665.de/walzen665/sharepulse:latest + + - name: Log in to Gitea Docker Registry + run: echo ${{ secrets.GITEAREGISTRYTOKEN }} | docker login -u ${{ secrets.GITEAREGISTRYUSERNAME }} --password-stdin https://git.walzen665.de + + - name: Push Docker Image to Gitea + run: docker push git.walzen665.de/walzen665/sharepulse:latest \ No newline at end of file From 5a36b62bde4ad7439740e1163f4a742f1730302d Mon Sep 17 00:00:00 2001 From: Max Date: Sat, 24 Feb 2024 21:14:18 +0100 Subject: [PATCH 5/5] Update build.yml --- .gitea/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index eb8b430..29ba252 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -70,7 +70,7 @@ jobs: path: build/libs - name: Build Docker Image - run: docker build . -t sharepulse:latest + run: docker build . -t walzen665/sharepulse:latest - name: Tag Docker image run: docker tag walzen665/sharepulse:latest git.walzen665.de/walzen665/sharepulse:latest