Files
garminsync-go/garmin-api-wrapper/Dockerfile

26 lines
594 B
Docker

# Builder stage
FROM python:3.12-slim AS builder
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Final stage
FROM python:3.12-slim
WORKDIR /app
# Copy dependencies from builder stage
COPY --from=builder /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages
COPY --from=builder /usr/local/bin /usr/local/bin
# Copy application code
COPY app.py .
# Add user for security
RUN groupadd -r appuser && \
useradd -r -g appuser appuser && \
chown -R appuser:appuser /app
USER appuser
EXPOSE 8081
CMD ["python", "app.py"]