mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-11 22:51:28 +00:00
Merge pull request #38917 from BerriAI/litellm_pin_wolfi_python313
fix(docker): bump wolfi-base for glibc 2.44 and pin apk python to 3.13
This commit is contained in:
commit
f814945d4c
5 changed files with 37 additions and 34 deletions
15
Dockerfile
15
Dockerfile
|
|
@ -1,10 +1,10 @@
|
||||||
# syntax=docker/dockerfile:1.7
|
# syntax=docker/dockerfile:1.7
|
||||||
|
|
||||||
# Base image for building
|
# Base image for building
|
||||||
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
|
|
||||||
# Runtime image
|
# Runtime image
|
||||||
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
||||||
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
||||||
ARG UI_BUILD_IMAGE=node:24.19-alpine3.24@sha256:d32cdf619f63fe0471182d08996dd516c6275bb5fd31ae06e55a570bd9e1ad43
|
ARG UI_BUILD_IMAGE=node:24.19-alpine3.24@sha256:d32cdf619f63fe0471182d08996dd516c6275bb5fd31ae06e55a570bd9e1ad43
|
||||||
|
|
@ -40,8 +40,8 @@ COPY --from=uvbin /uvx /usr/local/bin/uvx
|
||||||
RUN apk add --no-cache \
|
RUN apk add --no-cache \
|
||||||
bash \
|
bash \
|
||||||
gcc \
|
gcc \
|
||||||
python3 \
|
python-3.13 \
|
||||||
python3-dev \
|
python-3.13-dev \
|
||||||
rust \
|
rust \
|
||||||
openssl \
|
openssl \
|
||||||
openssl-dev \
|
openssl-dev \
|
||||||
|
|
@ -51,6 +51,7 @@ RUN apk add --no-cache \
|
||||||
|
|
||||||
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
||||||
UV_LINK_MODE=copy \
|
UV_LINK_MODE=copy \
|
||||||
|
UV_PYTHON_DOWNLOADS=0 \
|
||||||
PATH="/app/.venv/bin:${PATH}"
|
PATH="/app/.venv/bin:${PATH}"
|
||||||
|
|
||||||
# Copy dependency metadata first for layer caching
|
# Copy dependency metadata first for layer caching
|
||||||
|
|
@ -65,7 +66,7 @@ RUN uv sync --frozen --no-install-project --no-install-workspace --no-default-gr
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
# Copy full source tree
|
# Copy full source tree
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -86,7 +87,7 @@ RUN uv sync --frozen --no-default-groups --no-editable \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
||||||
npm_config_cache=/root/.npm \
|
npm_config_cache=/root/.npm \
|
||||||
|
|
@ -101,7 +102,7 @@ FROM $LITELLM_RUNTIME_IMAGE AS runtime
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
# node (without npm) is required by the prisma CLI at runtime
|
# node (without npm) is required by the prisma CLI at runtime
|
||||||
RUN apk add --no-cache bash openssl tzdata nodejs python3 libsndfile
|
RUN apk add --no-cache bash openssl tzdata nodejs python-3.13 libsndfile
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
ENV PATH="/app/.venv/bin:${PATH}" \
|
ENV PATH="/app/.venv/bin:${PATH}" \
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
||||||
|
|
||||||
FROM $UV_IMAGE AS uvbin
|
FROM $UV_IMAGE AS uvbin
|
||||||
|
|
@ -16,7 +16,7 @@ COPY --from=uvbin /uv /uvx /usr/local/bin/
|
||||||
# instead of nodeenv downloading one whose dynamic deps may not be in Wolfi
|
# instead of nodeenv downloading one whose dynamic deps may not be in Wolfi
|
||||||
# (e.g. Node 26.2.0 needs libatomic). Retry for transient apk.cgr.dev flakes.
|
# (e.g. Node 26.2.0 needs libatomic). Retry for transient apk.cgr.dev flakes.
|
||||||
RUN for i in 1 2 3; do \
|
RUN for i in 1 2 3; do \
|
||||||
apk add --no-cache bash gcc python3 python3-dev openssl openssl-dev libsndfile nodejs npm && break; \
|
apk add --no-cache bash gcc python-3.13 python-3.13-dev openssl openssl-dev libsndfile nodejs npm && break; \
|
||||||
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
||||||
sleep 5; \
|
sleep 5; \
|
||||||
done
|
done
|
||||||
|
|
@ -46,7 +46,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
|
||||||
--extra proxy-runtime \
|
--extra proxy-runtime \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
# Stage 2 — copy source and install the project + workspace members.
|
# Stage 2 — copy source and install the project + workspace members.
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -57,7 +57,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
|
||||||
--extra proxy-runtime \
|
--extra proxy-runtime \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
||||||
npm_config_cache=/root/.npm \
|
npm_config_cache=/root/.npm \
|
||||||
|
|
@ -71,7 +71,7 @@ FROM $LITELLM_RUNTIME_IMAGE AS runtime
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
RUN for i in 1 2 3; do \
|
RUN for i in 1 2 3; do \
|
||||||
apk add --no-cache bash openssl tzdata python3 libsndfile libatomic && break; \
|
apk add --no-cache bash openssl tzdata python-3.13 libsndfile libatomic && break; \
|
||||||
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
||||||
sleep 5; \
|
sleep 5; \
|
||||||
done
|
done
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
# syntax=docker/dockerfile:1.7
|
# syntax=docker/dockerfile:1.7
|
||||||
|
|
||||||
# Base image for building
|
# Base image for building
|
||||||
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
|
|
||||||
# Runtime image
|
# Runtime image
|
||||||
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
||||||
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
||||||
ARG UI_BUILD_IMAGE=node:24.19-alpine3.24@sha256:d32cdf619f63fe0471182d08996dd516c6275bb5fd31ae06e55a570bd9e1ad43
|
ARG UI_BUILD_IMAGE=node:24.19-alpine3.24@sha256:d32cdf619f63fe0471182d08996dd516c6275bb5fd31ae06e55a570bd9e1ad43
|
||||||
|
|
@ -39,8 +39,8 @@ COPY --from=uvbin /uvx /usr/local/bin/uvx
|
||||||
RUN apk add --no-cache \
|
RUN apk add --no-cache \
|
||||||
bash \
|
bash \
|
||||||
gcc \
|
gcc \
|
||||||
python3 \
|
python-3.13 \
|
||||||
python3-dev \
|
python-3.13-dev \
|
||||||
openssl \
|
openssl \
|
||||||
openssl-dev \
|
openssl-dev \
|
||||||
nodejs \
|
nodejs \
|
||||||
|
|
@ -49,6 +49,7 @@ RUN apk add --no-cache \
|
||||||
|
|
||||||
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
||||||
UV_LINK_MODE=copy \
|
UV_LINK_MODE=copy \
|
||||||
|
UV_PYTHON_DOWNLOADS=0 \
|
||||||
PATH="/app/.venv/bin:${PATH}"
|
PATH="/app/.venv/bin:${PATH}"
|
||||||
|
|
||||||
# Copy dependency metadata first for layer caching
|
# Copy dependency metadata first for layer caching
|
||||||
|
|
@ -63,7 +64,7 @@ RUN uv sync --frozen --no-install-project --no-install-workspace --no-default-gr
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
# Copy full source tree
|
# Copy full source tree
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -84,7 +85,7 @@ RUN uv sync --frozen --no-default-groups --no-editable \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
||||||
npm_config_cache=/root/.npm \
|
npm_config_cache=/root/.npm \
|
||||||
|
|
@ -98,7 +99,7 @@ FROM $LITELLM_RUNTIME_IMAGE AS runtime
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
# node (without npm) is required by the prisma CLI at runtime
|
# node (without npm) is required by the prisma CLI at runtime
|
||||||
RUN apk add --no-cache bash openssl tzdata nodejs python3 libsndfile
|
RUN apk add --no-cache bash openssl tzdata nodejs python-3.13 libsndfile
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
ENV PATH="/app/.venv/bin:${PATH}" \
|
ENV PATH="/app/.venv/bin:${PATH}" \
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
# syntax=docker/dockerfile:1.7
|
# syntax=docker/dockerfile:1.7
|
||||||
|
|
||||||
# Base images
|
# Base images
|
||||||
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG PROXY_EXTRAS_SOURCE=published
|
ARG PROXY_EXTRAS_SOURCE=published
|
||||||
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
||||||
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
# Pinned by digest like the other base images; bump explicitly on Node upgrades.
|
||||||
|
|
@ -37,8 +37,8 @@ COPY --from=uvbin /uvx /usr/local/bin/uvx
|
||||||
|
|
||||||
RUN for i in 1 2 3; do \
|
RUN for i in 1 2 3; do \
|
||||||
apk add --no-cache \
|
apk add --no-cache \
|
||||||
python3 \
|
python-3.13 \
|
||||||
python3-dev \
|
python-3.13-dev \
|
||||||
gcc \
|
gcc \
|
||||||
rust \
|
rust \
|
||||||
bash \
|
bash \
|
||||||
|
|
@ -52,6 +52,7 @@ RUN for i in 1 2 3; do \
|
||||||
|
|
||||||
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
ENV UV_PROJECT_ENVIRONMENT=/app/.venv \
|
||||||
UV_LINK_MODE=copy \
|
UV_LINK_MODE=copy \
|
||||||
|
UV_PYTHON_DOWNLOADS=0 \
|
||||||
PATH="/app/.venv/bin:${PATH}" \
|
PATH="/app/.venv/bin:${PATH}" \
|
||||||
LITELLM_NON_ROOT=true \
|
LITELLM_NON_ROOT=true \
|
||||||
XDG_CACHE_HOME=/app/.cache
|
XDG_CACHE_HOME=/app/.cache
|
||||||
|
|
@ -69,7 +70,7 @@ RUN --mount=type=cache,target=/app/.cache/uv,id=litellm-uv-cache \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
# Copy full source tree
|
# Copy full source tree
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -96,7 +97,7 @@ RUN --mount=type=cache,target=/app/.cache/uv,id=litellm-uv-cache \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3 \
|
--python python3.13 \
|
||||||
--no-sources-package litellm-proxy-extras; \
|
--no-sources-package litellm-proxy-extras; \
|
||||||
else \
|
else \
|
||||||
uv sync --frozen --no-default-groups --no-editable \
|
uv sync --frozen --no-default-groups --no-editable \
|
||||||
|
|
@ -105,7 +106,7 @@ RUN --mount=type=cache,target=/app/.cache/uv,id=litellm-uv-cache \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra saml \
|
--extra saml \
|
||||||
--python python3; \
|
--python python3.13; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
||||||
|
|
@ -124,7 +125,7 @@ RUN for i in 1 2 3; do \
|
||||||
apk upgrade --no-cache && break || sleep 5; \
|
apk upgrade --no-cache && break || sleep 5; \
|
||||||
done && \
|
done && \
|
||||||
for i in 1 2 3; do \
|
for i in 1 2 3; do \
|
||||||
apk add --no-cache python3 bash openssl tzdata libsndfile nodejs && break || sleep 5; \
|
apk add --no-cache python-3.13 bash openssl tzdata libsndfile nodejs && break || sleep 5; \
|
||||||
done
|
done
|
||||||
|
|
||||||
# Copy only what runtime needs. The application is installed inside the venv;
|
# Copy only what runtime needs. The application is installed inside the venv;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_BUILD_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:a31344ab2cb8618db84f535eec56f76f6178b142cb92cb2e48676cc2dcebea72
|
ARG LITELLM_RUNTIME_IMAGE=cgr.dev/chainguard/wolfi-base@sha256:e624c5d5e42382ce7165ddafcbbf8e6769a24cbd02ea6114b880b05ae5ba2a8d
|
||||||
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
ARG UV_IMAGE=ghcr.io/astral-sh/uv:0.11.7@sha256:240fb85ab0f263ef12f492d8476aa3a2e4e1e333f7d67fbdd923d00a506a516a
|
||||||
|
|
||||||
FROM $UV_IMAGE AS uvbin
|
FROM $UV_IMAGE AS uvbin
|
||||||
|
|
@ -16,7 +16,7 @@ COPY --from=uvbin /uv /uvx /usr/local/bin/
|
||||||
# instead of nodeenv downloading one whose dynamic deps may not be in Wolfi
|
# instead of nodeenv downloading one whose dynamic deps may not be in Wolfi
|
||||||
# (e.g. Node 26.2.0 needs libatomic). Retry for transient apk.cgr.dev flakes.
|
# (e.g. Node 26.2.0 needs libatomic). Retry for transient apk.cgr.dev flakes.
|
||||||
RUN for i in 1 2 3; do \
|
RUN for i in 1 2 3; do \
|
||||||
apk add --no-cache bash gcc python3 python3-dev openssl openssl-dev libsndfile nodejs npm && break; \
|
apk add --no-cache bash gcc python-3.13 python-3.13-dev openssl openssl-dev libsndfile nodejs npm && break; \
|
||||||
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
||||||
sleep 5; \
|
sleep 5; \
|
||||||
done
|
done
|
||||||
|
|
@ -47,7 +47,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra bedrock-realtime \
|
--extra bedrock-realtime \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
# Stage 2 — copy source and install the project + workspace members.
|
# Stage 2 — copy source and install the project + workspace members.
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -59,7 +59,7 @@ RUN --mount=type=cache,target=/root/.cache/uv \
|
||||||
--extra extra_proxy \
|
--extra extra_proxy \
|
||||||
--extra semantic-router \
|
--extra semantic-router \
|
||||||
--extra bedrock-realtime \
|
--extra bedrock-realtime \
|
||||||
--python python3
|
--python python3.13
|
||||||
|
|
||||||
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
RUN HOME=/opt/prisma XDG_CACHE_HOME=/opt/prisma/.cache PRISMA_BINARY_CACHE_DIR=/opt/prisma/binaries \
|
||||||
npm_config_cache=/root/.npm \
|
npm_config_cache=/root/.npm \
|
||||||
|
|
@ -73,7 +73,7 @@ FROM $LITELLM_RUNTIME_IMAGE AS runtime
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
RUN for i in 1 2 3; do \
|
RUN for i in 1 2 3; do \
|
||||||
apk add --no-cache bash openssl tzdata python3 libsndfile libatomic && break; \
|
apk add --no-cache bash openssl tzdata python-3.13 libsndfile libatomic && break; \
|
||||||
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
[ $i = 3 ] && { echo "apk add failed after 3 retries" >&2; exit 1; }; \
|
||||||
sleep 5; \
|
sleep 5; \
|
||||||
done
|
done
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue