From 6755063c7bfe6f9e0513f29c82588039a4e0a047 Mon Sep 17 00:00:00 2001 From: AdrianoDev Date: Wed, 27 May 2026 10:10:02 +0200 Subject: [PATCH] infra: Dockerfile + docker-compose per paper trader su VPS Co-Authored-By: Claude Opus 4.7 (1M context) --- Dockerfile | 14 ++++++++++++++ docker-compose.yml | 14 ++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d4cf71d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM python:3.11-slim + +COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv + +WORKDIR /app + +COPY pyproject.toml uv.lock ./ +RUN uv sync --frozen --no-dev + +COPY src/ src/ + +VOLUME /app/data + +CMD ["uv", "run", "python", "-m", "src.live.paper_trader"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..06e7ef2 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,14 @@ +services: + paper-trader: + build: . + container_name: pythagoras-paper + restart: unless-stopped + volumes: + - ./data:/app/data + environment: + - PYTHONUNBUFFERED=1 + healthcheck: + test: ["CMD", "python", "-c", "import json; s=json.load(open('/app/data/paper_trades/status.json')); assert s['last_update']"] + interval: 120s + timeout: 10s + retries: 3