mitmproxy2swagger Docker & Self-Hosted Deployment

GitHub

Automagically reverse-engineer REST APIs via capturing traffic

9,466 stars HTML HTML 1 file ยท ~1,325 tokens #mitmproxy#openapi#reverse-engineering#swagger
1. Pull Image (DOCKERHUB) docker pull alufers/mitmproxy2swagger:latest
2. Docker Run (1-Click Launch) docker run -d --name mitmproxy2swagger --restart always alufers/mitmproxy2swagger:latest
3. Podman Run podman run -d --name mitmproxy2swagger --restart always alufers/mitmproxy2swagger:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/alufers/mitmproxy2swagger:latest
5. ORAS Pull (OCI Artifact) oras pull alufers/mitmproxy2swagger:latest
Dockerfile
FROM python:3.14-slim-bookworm AS builder
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
ENV UV_HTTP_TIMEOUT=100 \
    UV_NO_CACHE=1 \
    UV_PROJECT_ENVIRONMENT=/venv
WORKDIR /app
COPY pyproject.toml uv.lock ./
RUN uv sync --no-dev --frozen --no-install-project
COPY . .
RUN uv sync --no-dev --frozen --no-editable

FROM python:3.14-slim-bookworm AS final
ENV PYTHONFAULTHANDLER=1 \
    PYTHONHASHSEED=random \
    PYTHONUNBUFFERED=1
WORKDIR /app
COPY --from=builder /venv /venv
ENV PATH="/venv/bin:${PATH}"

ENTRYPOINT [ "mitmproxy2swagger" ]