all repos — mcp-news @ 20021af083021d16f6f1732dc3fa370e756ecfc5

personal mcp server for news

Dockerfile (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
# news-mcp — imagem do servidor MCP de notícias.
FROM python:3.12-slim

# Sem .pyc (rootfs é read-only no runtime) e logs sem buffer.
ENV PYTHONUNBUFFERED=1 \
    PYTHONDONTWRITEBYTECODE=1

WORKDIR /app

# Usuário não-root (segurança: o container não roda como root).
RUN useradd --uid 10001 --create-home appuser

# Instala dependências primeiro (melhor cache de camadas).
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# Código + um feeds.json padrão (o deploy sobrescreve montando o seu por cima).
COPY *.py ./
COPY feeds.json ./feeds.json

# Pasta do banco pertencente ao appuser (o volume nomeado herda essa dona).
RUN mkdir -p /data && chown appuser:appuser /data

USER appuser
EXPOSE 17631

CMD ["python", "server.py"]