Files
HabitTracker/Dockerfile
2025-07-19 01:31:15 +02:00

40 lines
931 B
Docker

# Use Python 3.11 slim image
FROM python:3.11-slim
# Add labels for Gitea package linking (will be set during build)
ARG SOURCE_URL
ARG REPO_NAME
LABEL org.opencontainers.image.source="${SOURCE_URL}"
LABEL org.opencontainers.image.description="Habit Tracker Application"
LABEL org.opencontainers.image.licenses="MIT"
# Set working directory
WORKDIR /app
# Install system dependencies
RUN apt-get update && apt-get install -y \
gcc \
&& rm -rf /var/lib/apt/lists/*
# Copy requirements first for better caching
COPY requirements.txt .
# Install Python dependencies
RUN pip install --no-cache-dir -r requirements.txt
# Copy application code
COPY . .
# Create directory for database
RUN mkdir -p /app/data
# Expose port
EXPOSE 5000
# Set environment variables
ENV FLASK_APP=app.py
ENV FLASK_ENV=production
ENV PYTHONPATH=/app
# Run the application
CMD ["python", "-m", "flask", "run", "--host=0.0.0.0", "--port=5000"]