CIA/e-voting-system/docker/Dockerfile.backend
E-Voting Developer 5bebad45b8 Initial commit: Complete e-voting system with cryptography
- FastAPI backend with JWT authentication
- ElGamal, RSA-PSS, ZK-proofs crypto modules
- HTML5/JS frontend SPA
- MariaDB database with 5 tables
- Docker Compose with 3 services (frontend, backend, mariadb)
- Comprehensive tests for cryptography
- Typst technical report (30+ pages)
- Makefile with development commands
2025-11-03 16:13:08 +01:00

29 lines
641 B
Docker

FROM python:3.12-slim
WORKDIR /app
# Installer les dépendances système
RUN apt-get update && apt-get install -y \
gcc \
&& rm -rf /var/lib/apt/lists/*
# Installer Poetry
RUN pip install --no-cache-dir poetry
# Copier le code source en premier
COPY src/ ./src/
COPY .env* ./
# Copier les fichiers de dépendances
COPY pyproject.toml poetry.lock* ./
# Installer les dépendances Python
RUN poetry config virtualenvs.create false && \
poetry install --no-interaction --no-ansi --no-root
# Exposer le port
EXPOSE 8000
# Démarrer l'application
CMD ["uvicorn", "src.backend.main:app", "--host", "0.0.0.0", "--port", "8000"]