Skip to content

Commit 0e1c6dd

Browse files
feyclaude
andcommitted
fix(Dockerfile): убрать некорректные переменные и лишние флаги uv
UV_PYTHON_INSTALL_DIR управляет директорией для хранения интерпретаторов Python (не venv), поэтому присваивать ей путь к venv было семантически неверно. Флаг --allow-existing на uv venv избыточен при чистой сборке образа — venv ещё не существует. Оба артефакта удалены. Также убраны избыточные комментарии, которые описывали очевидное из кода. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent ba6fdf5 commit 0e1c6dd

1 file changed

Lines changed: 2 additions & 11 deletions

File tree

Dockerfile

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
FROM hexletbasics/base-image
22

3-
# Configure versions and paths up front for better caching
43
ARG PYTHON_VERSION=3.14
54

6-
# Keep project bin in PATH (existing convention)
7-
ENV PATH="/exercises-python/bin:${PATH}"
8-
9-
# Install curl and CA certs (minimal), then install uv via official script
105
ENV UV_INSTALL_DIR=/opt/uv
116
ENV PATH="${UV_INSTALL_DIR}/bin:${PATH}"
127
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates \
@@ -15,18 +10,14 @@ RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certifi
1510
&& curl -fsSL https://astral.sh/uv/install.sh | sh \
1611
&& ln -s ${UV_INSTALL_DIR}/* /usr/local/bin/
1712

18-
# Create a dedicated virtualenv managed by uv with the requested Python
1913
ENV VIRTUAL_ENV=/opt/venv
20-
ENV UV_PYTHON_INSTALL_DIR=${VIRTUAL_ENV}
21-
RUN uv venv --allow-existing ${VIRTUAL_ENV} --python ${PYTHON_VERSION}
14+
RUN uv venv ${VIRTUAL_ENV} --python ${PYTHON_VERSION}
2215

23-
# Activate venv for subsequent steps and point uv to it for project deps
24-
ENV PATH="${VIRTUAL_ENV}/bin:${PATH}"
16+
ENV PATH="${VIRTUAL_ENV}/bin:/exercises-python/bin:${PATH}"
2517
ENV UV_PROJECT_ENVIRONMENT=${VIRTUAL_ENV}
2618

2719
WORKDIR /exercises-python
2820

29-
# Cache dependencies: copy manifests first, sync, then copy the rest
3021
COPY pyproject.toml uv.lock ./
3122
RUN uv sync --locked
3223

0 commit comments

Comments
 (0)