auth-service / Dockerfile
abubasith86's picture
Update Dockerfile
3661bfb verified
# Use a lightweight Python base image
FROM python:3.13-slim AS builder
# Install git so we can clone the repo
RUN apt-get update && apt-get install -y git --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*
# Set working directory
WORKDIR /app
# Clone your GitHub project
RUN git clone https://github.com/mohamedabubasith/auth-service.git .
RUN pip install --no-cache-dir -r requirements.txt
# ensure writable data dir
RUN mkdir -p /data
EXPOSE 8000
# MongoDB
ENV MONGODB_URL="mongodb+srv://abu:abu@abucluster.y8rtyqg.mongodb.net/?retryWrites=true&w=majority&appName=AbuCluster"
ENV DATABASE_NAME="auth_db"
ENV SENDGRID_API_KEY="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"
# Redis
ENV REDIS_URL="redis-12560.crce214.us-east-1-3.ec2.redns.redis-cloud.com/12560"
ENV ENABLE_REDIS="false"
# JWT Settings
ENV ALGORITHM="HS256"
ENV ACCESS_TOKEN_EXPIRE_MINUTES="15"
ENV REFRESH_TOKEN_EXPIRE_DAYS="7"
# API Keys
ENV API_KEY_EXPIRE_DAYS="365"
# Security
ENV PASSWORD_MIN_LENGTH="8"
ENV MAX_LOGIN_ATTEMPTS="5"
ENV LOCKOUT_DURATION_MINUTES="30"
# Email Settings
ENV SMTP_SERVER="smtp.gmail.com"
ENV SMTP_PORT="587"
ENV SMTP_USERNAME="mohamedabu.basith@gmail.com"
ENV SMTP_PASSWORD="aerzvkjxlxgwxuaj"
# URLs
ENV API_BASE_URL="https://abubasith86-auth-service.hf.space"
ENV RESET_URL="https://abubasith86-auth-service.hf.space"
# Tenant
ENV DEFAULT_TENANT="kb"
CMD ["python", "main.py"]