# HTML 2 Gemini converter
FROM alpine:3.24 AS builder
# Install build dependencies
RUN apk add --no-cache \
python3 \
py3-pip \
gcc \
musl-dev \
python3-dev
WORKDIR /build
# Create virtual environment
RUN python3 -m venv /build/venv
COPY requirements.txt .
RUN . /build/venv/bin/activate && \
pip install --no-cache-dir -r requirements.txt
# Final runtime stage
FROM alpine:3.24
LABEL maintainer="Uvokchee" \
description="HTML to Gemini converter" \
version="1.0"
# Install runtime dependencies
RUN apk add --no-cache python3
WORKDIR /app
# Copy virtual environment from builder
COPY --from=builder /build/venv /app/venv
# Copy application files
COPY main.py .
COPY converters ./converters
# Set environment variables
ENV PATH=/app/venv/bin:$PATH \
PYTHONUNBUFFERED=1 \
PYTHONDONTWRITEBYTECODE=1