From a0f1654cf53e8e55a69688263aeabb7a507da336 Mon Sep 17 00:00:00 2001 From: Siarhei Siniak Date: Tue, 1 Jul 2025 11:03:55 +0300 Subject: [PATCH] [+] improve project layout --- deps/test-task-2025-06-30-v1/.dockerignore | 3 ++ .../docker-compose.yml | 20 +++++++++++ .../docker/web/Dockerfile | 34 +++++++++++++++++++ .../docker/web/apt.requirements.txt | 1 + .../async_api/__init__.py | 0 .../tickers_retrieval/__init__.py | 0 6 files changed, 58 insertions(+) create mode 100644 deps/test-task-2025-06-30-v1/.dockerignore create mode 100644 deps/test-task-2025-06-30-v1/docker-compose.yml create mode 100644 deps/test-task-2025-06-30-v1/docker/web/Dockerfile create mode 100644 deps/test-task-2025-06-30-v1/docker/web/apt.requirements.txt create mode 100644 deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/async_api/__init__.py create mode 100644 deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/tickers_retrieval/__init__.py diff --git a/deps/test-task-2025-06-30-v1/.dockerignore b/deps/test-task-2025-06-30-v1/.dockerignore new file mode 100644 index 0000000..091a676 --- /dev/null +++ b/deps/test-task-2025-06-30-v1/.dockerignore @@ -0,0 +1,3 @@ +.venv +tmp +.git diff --git a/deps/test-task-2025-06-30-v1/docker-compose.yml b/deps/test-task-2025-06-30-v1/docker-compose.yml new file mode 100644 index 0000000..6a158db --- /dev/null +++ b/deps/test-task-2025-06-30-v1/docker-compose.yml @@ -0,0 +1,20 @@ +services: + web: + build: + context: . + dockerfile: ./docker/web/Dockerfile + target: web + environment: + volumes: + - .:/app:ro + - ./tmp/cache:/app/tmp/cache:rw + logging: + driver: "json-file" + options: + max-size: 10m + max-file: "3" + deploy: + resources: + limits: + cpus: '0.5' + memory: 128M diff --git a/deps/test-task-2025-06-30-v1/docker/web/Dockerfile b/deps/test-task-2025-06-30-v1/docker/web/Dockerfile new file mode 100644 index 0000000..3732538 --- /dev/null +++ b/deps/test-task-2025-06-30-v1/docker/web/Dockerfile @@ -0,0 +1,34 @@ +FROM docker.io/library/python:3.12@sha256:6121c801703ec330726ebf542faab113efcfdf2236378c03df8f49d80e7b4180 AS base + +ENV DEBIAN_FRONTEND=noninteractive + +WORKDIR /app + +COPY docker/web/apt.requirements.txt docker/web/apt.requirements.txt +RUN apt-get update \ + && apt-get install -y $(cat docker/web/apt.requirements.txt) + +RUN \ + pip3 install \ + --break-system-packages uv + +COPY requirements.txt requirements.txt + +RUN \ + --mount=type=bind,source=releases/whl,target=/app/releases/whl \ + --mount=type=cache,target=/root/.cache/pip \ + --mount=type=cache,target=/root/.cache/uv \ + uv pip \ + install \ + --system \ + --break-system-packages \ + -f releases/whl \ + -r requirements.txt + +WORKDIR /app +RUN apt-get update -yy && apt-get install -yy tini + +FROM base as web + +ENTRYPOINT ["tini", "--"] +CMD ["/usr/bin/python3", "-m", "d1.reload"] diff --git a/deps/test-task-2025-06-30-v1/docker/web/apt.requirements.txt b/deps/test-task-2025-06-30-v1/docker/web/apt.requirements.txt new file mode 100644 index 0000000..a7fcb46 --- /dev/null +++ b/deps/test-task-2025-06-30-v1/docker/web/apt.requirements.txt @@ -0,0 +1 @@ +wget tar git curl diff --git a/deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/async_api/__init__.py b/deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/async_api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/tickers_retrieval/__init__.py b/deps/test-task-2025-06-30-v1/python/online/fxreader/pr34/test_task_2025_06_30_v1/tickers_retrieval/__init__.py new file mode 100644 index 0000000..e69de29