From 06655add2ba0f5d1d4ad1a4dc7197351be365f60 Mon Sep 17 00:00:00 2001 From: "Trez.One" Date: Fri, 31 Jan 2025 13:31:53 -0500 Subject: [PATCH] Attempting to put both Immich server and proxy under one domain; also updated deployment pipeline. --- .../workflows/pr-cloudflare-docker-deploy.yml | 14 +++++++- docker-compose.yml | 32 ++++++++++++------- 2 files changed, 33 insertions(+), 13 deletions(-) diff --git a/.gitea/workflows/pr-cloudflare-docker-deploy.yml b/.gitea/workflows/pr-cloudflare-docker-deploy.yml index b858b753..cc478929 100644 --- a/.gitea/workflows/pr-cloudflare-docker-deploy.yml +++ b/.gitea/workflows/pr-cloudflare-docker-deploy.yml @@ -186,11 +186,23 @@ jobs: needs: [cloudflare-dns-setup] outputs: pr-pushed: ${{ steps.commit-readme.outputs.pushed }} + modified_services: ${{ steps.compare-services.outputs.modified_services }} steps: - name: Checkout uses: actions/checkout@v4 - name: Install yq uses: dcarbone/install-yq-action@v1 + - name: Fetch main branch for comparison + run: | + git fetch origin main:main + - name: Compare services using yq + id: compare-services + run: | + current_services=$(yq '.services | keys | .[]' docker-compose.yml | sort) + main_services=$(yq '.services | keys | .[]' $(git show main:docker-compose.yml) | sort) + modified_services=$(comm -13 <(echo "$main_services") <(echo "$current_services")) + echo "Modified services: $modified_services" + echo "modified_services=$modified_services" >> $GITHUB_OUTPUT - name: Generate service list run: | yq '.services | to_entries | map({"service": .key, "image": .value.image})' docker-compose.yml > services.yml @@ -292,7 +304,7 @@ jobs: uses: keatonLiu/docker-compose-remote-action@v1.2 with: docker_compose_file: docker-compose.yml - docker_args: -d --remove-orphans --pull missing --parallel -1 --no-recreate + docker_args: -d --remove-orphans --pull missing --parallel -1 ${{ steps.detect-modified-services.outputs.modified_services }} ssh_user: gitea-deploy ssh_host: 192.168.1.254 ssh_host_public_key: ${{ secrets.RINOA_GITEA_PUBLIC_SSH_KEY }} diff --git a/docker-compose.yml b/docker-compose.yml index 3afe94cb..5a9df318 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1939,6 +1939,26 @@ services: healthcheck: disable: false image: ghcr.io/immich-app/immich-server:release + labels: + swag: enable + swag_proto: http + swag_port: 2283 + swag_url: pics.${MY_TLD} + swag_server_custom_directive: >- + location /share { + proxy_pass http://immich-public-proxy:3000; + proxy_set_header Host $$host; + proxy_set_header X-Real-IP $$remote_addr; + proxy_set_header X-Forwarded-For $$proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $$scheme; + } + swag.uptime-kuma.enabled: true + swag.uptime-kuma.monitor.url: https://pics.${MY_TLD} + homepage.group: Lifestyle + homepage.name: Immich + homepage.href: https://pics.${MY_TLD} + homepage.icon: immich.svg + homepage.description: High performance self-hosted photo and video management solution ports: - 2283:2283 restart: always @@ -2003,18 +2023,6 @@ services: start_period: 10s timeout: 5s image: alangrainger/immich-public-proxy:latest - labels: - swag: enable - swag_proto: http - swag_port: 3000 - swag_url: pics.${MY_TLD} - swag.uptime-kuma.enabled: true - swag.uptime-kuma.monitor.url: https://pics.${MY_TLD} - homepage.group: Lifestyle - homepage.name: Immich - homepage.href: https://pics.${MY_TLD} - homepage.icon: immich.svg - homepage.description: High performance self-hosted photo and video management solution restart: always immich-power-tools: container_name: immich-power-tools