- add config.yml as single source of truth for collected repos/categories - add collect.py CLI to pull lib/api/wiki site builds and mcp bundles from source repos and regenerate nginx.conf + _index/index.html - port mcp runtime (main.py/core.py/config.py): nginx + health + FastMCP servers started from config.yml - docker: python:3.13-slim + nginx, expose 8000-8006 + 9000 (html portal) - drone: publish html (6007:9000) and MCP ports 8000-8006 - move mongo-ops docs to wiki/, add auth-server (api) and hexa (lib) - refresh lib site builds (lib/ prefix) and collect mcp bundles
45 lines
1.5 KiB
Docker
45 lines
1.5 KiB
Docker
# ---------------------------------------------------------------------------
|
|
# aetos-docs — serves both the HTML documentation portal (nginx) and the
|
|
# per-library MCP servers (FastMCP streamable-http).
|
|
# ---------------------------------------------------------------------------
|
|
|
|
FROM python:3.13-slim
|
|
|
|
LABEL maintainer="Aetoskia <dev@aetoskia.com>"
|
|
LABEL description="Unified documentation portal and MCP server for Aetoskia projects"
|
|
|
|
# --- system deps -----------------------------------------------------------
|
|
RUN apt-get update && \
|
|
apt-get install -y --no-install-recommends nginx && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
# --- python deps -----------------------------------------------------------
|
|
WORKDIR /app
|
|
|
|
ARG PIP_USERNAME
|
|
ARG PIP_PASSWORD
|
|
ARG PIP_REPO_URL
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir uv && \
|
|
uv pip install --system -r requirements.txt
|
|
|
|
# --- application files -----------------------------------------------------
|
|
COPY main.py core.py config.py collect.py config.yml ./
|
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|
RUN rm -f /etc/nginx/sites-enabled/default
|
|
|
|
# --- collected documentation tree -----------------------------------------
|
|
COPY _index /usr/share/nginx/html/
|
|
COPY libs /usr/share/nginx/html/libs
|
|
COPY apis /usr/share/nginx/html/apis
|
|
COPY wiki /usr/share/nginx/html/wiki
|
|
COPY tutorials /usr/share/nginx/html/tutorials
|
|
|
|
# --- MCP bundles -----------------------------------------------------------
|
|
COPY mcp /app/mcp
|
|
|
|
EXPOSE 8000 8001 8002 8003 8004 8005 8006 9000
|
|
|
|
CMD ["python", "main.py"]
|