# MCLogger Web Panel FROM python:3.11-slim WORKDIR /app RUN apt-get update && apt-get install -y --no-install-recommends curl \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . EXPOSE 5000 # ── Runtime-Umgebungsvariablen (werden von Coolify überschrieben) ────────────── ENV PYTHONUNBUFFERED=1 \ FLASK_APP=app.py \ # Flask SECRET_KEY="" \ HOST="0.0.0.0" \ PORT="5000" \ DEBUG="false" \ # Panel-Datenbank (Benutzer / Gruppen) PANEL_DB_HOST="" \ PANEL_DB_PORT="3306" \ PANEL_DB_USER="" \ PANEL_DB_PASSWORD="" \ PANEL_DB_NAME="mclogger_panel" \ # Credentials-Datenbank (verschlüsselte MC-DB-Zugangsdaten) CREDS_DB_HOST="" \ CREDS_DB_PORT="3306" \ CREDS_DB_USER="" \ CREDS_DB_PASSWORD="" \ CREDS_DB_NAME="mclogger_creds" \ # Sicherheit FERNET_KEY="" \ PASSWORD_PEPPER="" # Non-root user RUN useradd -m -u 1000 appuser && chown -R appuser:appuser /app USER appuser CMD ["gunicorn", "--bind", "0.0.0.0:5000", "--workers", "2", "--timeout", "60", "app:app"]