FROM python:3.10-slim # 1. Global Dependencies USER root RUN apt-get update && apt-get install -y \ git curl wget python3-pip libxml2-dev libxslt-dev \ exiftool libcairo2-dev pkg-config python3-dev \ gcc g++ make libffi-dev libssl-dev \ && rm -rf /var/lib/apt/lists/* # 2. Setup User RUN useradd -m -u 1000 user ENV PATH="/home/user/.local/bin:$PATH" WORKDIR /home/user/app USER user # [1-3] Sherlock, Maigret, Holehe RUN git clone https://github.com/sherlock-project/sherlock.git /home/user/sherlock && cd /home/user/sherlock && pip install --user . RUN pip install --user maigret RUN git clone https://github.com/megadose/holehe.git /home/user/holehe && cd /home/user/holehe && pip install --user . # [4] PHONEINFOGA (Stable Binary) RUN mkdir -p /home/user/.local/bin && \ wget https://github.com/sundowndev/phoneinfoga/releases/download/v2.10.8/phoneinfoga_Linux_x86_64.tar.gz -O /tmp/phone.tar.gz && \ tar -xzf /tmp/phone.tar.gz -C /home/user/.local/bin && chmod +x /home/user/.local/bin/phoneinfoga && rm /tmp/phone.tar.gz # [5] GHUNT RUN pip install --user ghunt # [6] SOCIALSCAN & EXIFREAD RUN pip install --user socialscan ExifRead # [7] CLOUD-ENUMERATOR RUN git clone https://github.com/initstring/cloud_enum.git /home/user/cloud_enum && \ cd /home/user/cloud_enum && pip install --user -r requirements.txt # [8] TWINT (Direct from Stable Branch) RUN pip install --user --no-cache-dir git+https://github.com/twintproject/twint.git@origin/master#egg=twint # --- FINAL SETUP --- WORKDIR /app COPY --chown=user . /app RUN pip install --user flask gunicorn requests aiohttp EXPOSE 7860 CMD ["gunicorn", "--bind", "0.0.0.0:7860", "app:app"]