From 2dedc283c67b201f6c520b2b4f72e9862cf115b7 Mon Sep 17 00:00:00 2001 From: Davide Grilli Date: Tue, 21 Jul 2026 11:14:56 +0200 Subject: [PATCH] Add Dockerfile for the app python:3.12-slim, installs the package (pip install .), runs pending Alembic migrations before starting uvicorn. Migrations/alembic.ini/ scripts are copied in as-is (not part of the installed package) since alembic and generate_master_key.py run directly against the source tree. Co-Authored-By: Claude Sonnet 5 --- .dockerignore | 13 +++++++++++++ Dockerfile | 15 +++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..19f8bda --- /dev/null +++ b/.dockerignore @@ -0,0 +1,13 @@ +.venv/ +__pycache__/ +*.pyc +.git/ +.env +*.db +master.xprv.enc +logs/ +data/ +.pytest_cache/ +*.egg-info/ +tests/ +.claude/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..62b0e10 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM python:3.12-slim + +WORKDIR /app + +COPY pyproject.toml ./ +COPY app ./app +COPY migrations ./migrations +COPY alembic.ini ./ +COPY scripts ./scripts + +RUN pip install --no-cache-dir . + +EXPOSE 8123 + +CMD ["/bin/sh", "-c", "alembic upgrade head && exec uvicorn app.main:app --host 0.0.0.0 --port 8123"]