From c81ba2962450f9baca0396aba964bc7b556bba4b Mon Sep 17 00:00:00 2001 From: dm <> Date: Tue, 26 Aug 2025 23:13:57 +0300 Subject: [PATCH] docker yeah --- Dockerfile | 23 +++++++++++++++++++++++ docker-compose.yml | 13 +++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..23f952c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,23 @@ +FROM python:3.13-slim + +RUN apt-get update \ + && apt-get install -y --no-install-recommends curl ca-certificates \ + && rm -rf /var/lib/apt/lists/* + +RUN curl -LsSf https://astral.sh/uv/install.sh | sh \ + && ln -s /root/.local/bin/uv /usr/local/bin/uv + +ENV XDG_CACHE_HOME=/root/.cache \ + UV_CACHE_DIR=/root/.cache/uv \ + UV_LINK_MODE=copy \ + PYTHONUNBUFFERED=1 + +WORKDIR /app + +COPY pyproject.toml uv.lock ./ +RUN uv sync --frozen --no-dev + +COPY . . + +EXPOSE 8000 +CMD ["uv", "run", "uvicorn", "app.api:app", "--host", "0.0.0.0", "--port", "8000"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..0a8b08b --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +services: + web: + build: . + container_name: sfs + command: uv run uvicorn app.api:app --host 0.0.0.0 --port 8000 + ports: + - "8000:8000" + volumes: + - .:/app + - ./files:/app/files + env_file: + - .env + restart: unless-stopped