From e1800e7b0f8e9d7b74aff14c07cbe60716538305 Mon Sep 17 00:00:00 2001 From: Lars Date: Sat, 3 Oct 2026 11:15:24 +0200 Subject: [PATCH] Vermeide Docker-Hub-Timeouts beim Dev-Build durch GHCR-Basisimage. Co-authored-by: Cursor --- .gitea/workflows/deploy-dev.yml | 2 +- .gitea/workflows/deploy-prod.yml | 2 +- Dockerfile | 4 +--- docs/DEPLOYMENT.md | 6 ++++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.gitea/workflows/deploy-dev.yml b/.gitea/workflows/deploy-dev.yml index 98ac2f9..155f042 100644 --- a/.gitea/workflows/deploy-dev.yml +++ b/.gitea/workflows/deploy-dev.yml @@ -41,7 +41,7 @@ jobs: export ENGINE_BUILD BUYING_AGENT_API_PORT ENGINE_BUILD="$(git rev-parse --short HEAD)" BUYING_AGENT_API_PORT=8095 - docker compose -f docker-compose.dev-env.yml build --no-cache api + docker compose -f docker-compose.dev-env.yml build --pull=false api if ! ENGINE_BUILD="$ENGINE_BUILD" BUYING_AGENT_API_PORT="$BUYING_AGENT_API_PORT" \ docker compose -f docker-compose.dev-env.yml up -d --wait; then echo "compose up --wait failed — api logs:" diff --git a/.gitea/workflows/deploy-prod.yml b/.gitea/workflows/deploy-prod.yml index 9525a30..367953d 100644 --- a/.gitea/workflows/deploy-prod.yml +++ b/.gitea/workflows/deploy-prod.yml @@ -48,7 +48,7 @@ jobs: ENGINE_BUILD="$(git rev-parse --short HEAD)" BUYING_AGENT_API_BIND=0.0.0.0 BUYING_AGENT_API_PORT=8006 - docker compose build --no-cache api + docker compose build --pull=false api if ! ENGINE_BUILD="$ENGINE_BUILD" \ BUYING_AGENT_API_BIND="$BUYING_AGENT_API_BIND" \ BUYING_AGENT_API_PORT="$BUYING_AGENT_API_PORT" \ diff --git a/Dockerfile b/Dockerfile index 454a81a..a6793b8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,9 @@ -FROM python:3.13-slim-bookworm AS base +FROM ghcr.io/astral-sh/uv:0.10.11-python3.13-trixie-slim AS base RUN apt-get update \ && apt-get install -y --no-install-recommends libpq5 \ && rm -rf /var/lib/apt/lists/* -COPY --from=ghcr.io/astral-sh/uv:0.10.11 /uv /usr/local/bin/uv - WORKDIR /app ENV UV_COMPILE_BYTECODE=1 \ diff --git a/docs/DEPLOYMENT.md b/docs/DEPLOYMENT.md index d033a97..d5fdd71 100644 --- a/docs/DEPLOYMENT.md +++ b/docs/DEPLOYMENT.md @@ -66,6 +66,8 @@ Watchtower bleibt aus. | `deploy-prod.yml` | Push `main` | Deploy nach `~/docker/buyingagent`, Health `localhost:8006` | | `test.yml` | nach Dev-Deploy bzw. Push `develop` | nicht-schreibender Smoke gegen `/health/live` und `/health/ready` | +Der API-Build nutzt `ghcr.io` (nicht Docker Hub). `docker compose build --pull=false` verwendet vorhandene Basis-Images und vermeidet IPv6-Timeouts gegen `auth.docker.io`. + --- ## Manuelles Deploy @@ -74,14 +76,14 @@ Watchtower bleibt aus. # Development cd ~/docker/buyingagent-dev git fetch origin develop && git reset --hard origin/develop -docker compose -f docker-compose.dev-env.yml build --no-cache api +docker compose -f docker-compose.dev-env.yml build --pull=false api BUYING_AGENT_API_PORT=8095 docker compose -f docker-compose.dev-env.yml up -d --wait curl -sf http://localhost:8095/health/ready # Production cd ~/docker/buyingagent git fetch origin main && git reset --hard origin/main -BUYING_AGENT_API_BIND=0.0.0.0 BUYING_AGENT_API_PORT=8006 docker compose build --no-cache api +BUYING_AGENT_API_BIND=0.0.0.0 BUYING_AGENT_API_PORT=8006 docker compose build --pull=false api BUYING_AGENT_API_BIND=0.0.0.0 BUYING_AGENT_API_PORT=8006 docker compose up -d --wait curl -sf http://localhost:8006/health/ready ```