Skip to content

Commit fa0e63b

Browse files
committed
fix(docker): copy uv.lock into build context to pin greenlet version
Without the lock file, uv sync resolves fresh and picks up greenlet 3.4.0 which lacks arm64 wheels for manylinux_2_41, breaking the multi-arch Docker build.
1 parent 27cb7e4 commit fa0e63b

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

docker/standalone/Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,20 @@ RUN apt-get update && apt-get install -y \
4141
&& rm -rf /var/lib/apt/lists/* \
4242
&& pip install --no-cache-dir uv
4343

44-
# Copy dependency files and README (required by pyproject.toml)
44+
# Copy dependency files, lock file, and README (required by pyproject.toml)
4545
COPY hindsight-api-slim/pyproject.toml ./api/
4646
COPY hindsight-api-slim/README.md ./api/
47+
COPY uv.lock ./api/
4748

4849
WORKDIR /app/api
4950

5051
# Sync dependencies using appropriate extras based on INCLUDE_LOCAL_MODELS
5152
# local-ml: torch, sentence-transformers, transformers, einops, flashrank, mlx (optional)
5253
# embedded-db: pg0-embedded (always included for embedded PostgreSQL support)
5354
RUN if [ "$INCLUDE_LOCAL_MODELS" = "true" ]; then \
54-
uv sync --extra local-ml --extra embedded-db; \
55+
uv sync --frozen --extra local-ml --extra embedded-db; \
5556
else \
56-
uv sync --extra embedded-db; \
57+
uv sync --frozen --extra embedded-db; \
5758
fi
5859

5960
# Copy source code (alembic migrations are inside hindsight_api/)

0 commit comments

Comments
 (0)