From bde8e8bedced8ad787484ffeddf959036c2814f7 Mon Sep 17 00:00:00 2001 From: steinhelge Date: Tue, 25 Nov 2025 20:00:54 +0100 Subject: [PATCH] feat: Integrate Traefik for API and web routing with TLS, updating build workflow to use new HTTPS API endpoints. --- .gitea/workflows/build.yml | 4 +-- .../deploy/docker-compose.dev.yml | 30 +++++++++-------- .../deploy/docker-compose.prod.yml | 32 +++++++++---------- 3 files changed, 34 insertions(+), 32 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 853db96..dd4c1b4 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -45,9 +45,9 @@ jobs: - name: Build Frontend (${{ env.TAG }}) run: | if [ "$TAG" = "dev" ]; then - API_URL="http://t610:5005/api" + API_URL="https://hospitality-dev-api.theriise.net/api" else - API_URL="http://t610:5004/api" + API_URL="https://hospitality-api.theriise.net/api" fi docker build \ diff --git a/src/hospitality-web/deploy/docker-compose.dev.yml b/src/hospitality-web/deploy/docker-compose.dev.yml index 1c9ba30..b34c4b8 100644 --- a/src/hospitality-web/deploy/docker-compose.dev.yml +++ b/src/hospitality-web/deploy/docker-compose.dev.yml @@ -4,6 +4,8 @@ networks: hospitality-dev-net: name: hospitality-dev-net driver: bridge + edge: + external: true services: db: @@ -30,8 +32,13 @@ services: - db networks: - hospitality-dev-net - # ports: - # - "5005:8080" + - edge + labels: + - "traefik.enable=true" + - "traefik.docker.network=edge" + - "traefik.http.routers.hospitality-dev-api.rule=Host(`hospitality-dev-api.theriise.net`)" + - "traefik.http.routers.hospitality-dev-api.entrypoints=websecure" + - "traefik.http.routers.hospitality-dev-api.tls=true" web: image: gitea.theriise.net/steinhelge/hospitality-frontend:dev @@ -41,18 +48,13 @@ services: - api networks: - hospitality-dev-net - ports: - - "8085:80" - # Eller via Traefik, samme mønster som over: - # networks: - # - hospitality-dev-net - # - edge - # labels: - # - "traefik.enable=true" - # - "traefik.docker.network=edge" - # - "traefik.http.routers.hospitality-dev.rule=Host(`hospitality-dev.theriise.net`)" - # - "traefik.http.routers.hospitality-dev.entrypoints=websecure" - # - "traefik.http.routers.hospitality-dev.tls=true" + - edge + labels: + - "traefik.enable=true" + - "traefik.docker.network=edge" + - "traefik.http.routers.hospitality-dev.rule=Host(`hospitality-dev.theriise.net`)" + - "traefik.http.routers.hospitality-dev.entrypoints=websecure" + - "traefik.http.routers.hospitality-dev.tls=true" volumes: hospitality-dev-db-data: diff --git a/src/hospitality-web/deploy/docker-compose.prod.yml b/src/hospitality-web/deploy/docker-compose.prod.yml index c88f4df..8bff0a0 100644 --- a/src/hospitality-web/deploy/docker-compose.prod.yml +++ b/src/hospitality-web/deploy/docker-compose.prod.yml @@ -4,6 +4,8 @@ networks: hospitality-net: name: hospitality-net driver: bridge + edge: + external: true services: db: @@ -31,9 +33,13 @@ services: - db networks: - hospitality-net - # Hvis du vil nå API direkte uten Traefik: - # ports: - # - "5004:8080" + - edge + labels: + - "traefik.enable=true" + - "traefik.docker.network=edge" + - "traefik.http.routers.hospitality-api.rule=Host(`hospitality-api.theriise.net`)" + - "traefik.http.routers.hospitality-api.entrypoints=websecure" + - "traefik.http.routers.hospitality-api.tls=true" web: image: gitea.theriise.net/steinhelge/hospitality-frontend:latest @@ -43,19 +49,13 @@ services: - api networks: - hospitality-net - # Ekstern tilgang (uten Traefik): - ports: - - "8084:80" - # Hvis du vil kjøre via Traefik i stedet: - # networks: - # - hospitality-net - # - edge - # labels: - # - "traefik.enable=true" - # - "traefik.docker.network=edge" - # - "traefik.http.routers.hospitality.rule=Host(`hospitality.theriise.net`)" - # - "traefik.http.routers.hospitality.entrypoints=websecure" - # - "traefik.http.routers.hospitality.tls=true" + - edge + labels: + - "traefik.enable=true" + - "traefik.docker.network=edge" + - "traefik.http.routers.hospitality.rule=Host(`hospitality.theriise.net`)" + - "traefik.http.routers.hospitality.entrypoints=websecure" + - "traefik.http.routers.hospitality.tls=true" volumes: hospitality-db-data: