From 495f3734c5e55a5d9dded421ddd21447fa36518f Mon Sep 17 00:00:00 2001 From: migatu Date: Tue, 28 Jul 2026 17:29:12 +0200 Subject: [PATCH] Stacks --- docker-compose-stack.yml | 54 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 docker-compose-stack.yml diff --git a/docker-compose-stack.yml b/docker-compose-stack.yml new file mode 100644 index 0000000..eb5a4d7 --- /dev/null +++ b/docker-compose-stack.yml @@ -0,0 +1,54 @@ +services: + data: + image: gitea.czernobog.pl/gitea/astrololo-data:4b17f2dd + container_name: astrololo-data + restart: unless-stopped + environment: + DATA_PROVIDER: ${DATA_PROVIDER:-excel} + EXCEL_DIR: /app/data_files + CACHE_DIR: /app/.cache + INDEXED_KEYS: name,id,symbol + volumes: + - ./services/data/data_files:/app/data_files + - data_cache:/app/.cache + ports: + - "8002:8002" + + logic: + image: gitea.czernobog.pl/gitea/astrololo-logic:4b17f2dd + container_name: astrololo-logic + restart: unless-stopped + environment: + DATA_URL: http://data:8002 + EPHEMERIS_ENGINE: own # silnik własny (permisywny) — domyślny + # adres silnika B (AGPL) używany tylko w trybie porównawczym (profil comparison) + ENGINE_SWISSEPH_URL: http://engine-swisseph:8003 + depends_on: + - data + ports: + - "8001:8001" + + # Silnik B (AGPL) — OPCJONALNY, izolowany. Startuje tylko z profilem "comparison": + # docker compose --profile comparison up + # Nie wchodzi do domyślnego (zamkniętego) produktu — patrz services/engine-swisseph/LICENSE. + engine-swisseph: + image: gitea.czernobog.pl/gitea/astrololo-engine-swisseph:latest + container_name: astrololo-engine-swisseph + restart: unless-stopped + profiles: ["comparison"] + ports: + - "8003:8003" + + presentation: + image: gitea.czernobog.pl/gitea/astrololo-presentation:latest + container_name: astrololo-presentation + restart: unless-stopped + environment: + LOGIC_URL: http://logic:8001 + depends_on: + - logic + ports: + - "8000:8000" + +volumes: + data_cache: