-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathDockerfile
More file actions
32 lines (24 loc) · 782 Bytes
/
Dockerfile
File metadata and controls
32 lines (24 loc) · 782 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
FROM ghcr.io/astral-sh/uv:0.5-python3.13-bookworm AS build-stage
# Set environment variables
ENV UV_COMPILE_BYTECODE=1
# Set the working directory to /openvariant
WORKDIR /openvariant
# Stage necessary files into the container
COPY uv.lock uv.lock
COPY pyproject.toml pyproject.toml
COPY openvariant openvariant
COPY LICENSE LICENSE
COPY README.md README.md
# Install dependencies and build the project
RUN mkdir -p /root/.cache/uv \
&& uv sync --frozen --no-dev \
&& uv build
# Second stage: Runtime image
FROM python:3.13-bookworm AS runtime-stage
# Copy openvariant from the build stage
COPY --from=build-stage /openvariant/dist /openvariant/dist
WORKDIR /openvariant
# Install openvariant
RUN pip install dist/*.tar.gz
# Test the installation
RUN openvar --help