chore(compose): replace all build: directives with registry images
Some checks failed
Build and Push Docker Images / Build Backend (FastAPI) (push) Successful in 33s
Build and Push Docker Images / Build Frontend (Next.js) (push) Successful in 1m9s
Build and Push Docker Images / Build Integrator (push) Successful in 31s
Build and Push Docker Images / Build Kestra Init (push) Failing after 1m12s
Build and Push Docker Images / Trigger Portainer Update (push) Has been skipped

All four custom services now pull pre-built images from the registry
instead of building on the host. Also switches the integrator data
volume to a named volume (supplementary_data) since bind mounts to
./data won't exist on the Portainer host.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-24 12:41:40 +00:00
parent 6ce52d833c
commit 7e8111b1f5

View File

@@ -25,9 +25,7 @@ services:
# FastAPI Backend # FastAPI Backend
backend: backend:
build: image: privaterepo.sitaru.org/tudor/school_compare-backend:latest
context: .
dockerfile: Dockerfile
container_name: schoolcompare_backend container_name: schoolcompare_backend
ports: ports:
- "8000:80" - "8000:80"
@@ -52,17 +50,12 @@ services:
# Next.js Frontend # Next.js Frontend
nextjs: nextjs:
build: image: privaterepo.sitaru.org/tudor/school_compare-frontend:latest
context: ./nextjs-app
dockerfile: Dockerfile
args:
FASTAPI_URL: http://backend:80/api
container_name: schoolcompare_nextjs container_name: schoolcompare_nextjs
ports: ports:
- "3000:3000" - "3000:3000"
environment: environment:
NODE_ENV: production NODE_ENV: production
# Next.js can access backend via internal network
NEXT_PUBLIC_API_URL: http://localhost:8000/api NEXT_PUBLIC_API_URL: http://localhost:8000/api
FASTAPI_URL: http://backend:80/api FASTAPI_URL: http://backend:80/api
depends_on: depends_on:
@@ -121,6 +114,7 @@ services:
kestra-init: kestra-init:
image: privaterepo.sitaru.org/tudor/school_compare-kestra-init:latest image: privaterepo.sitaru.org/tudor/school_compare-kestra-init:latest
container_name: schoolcompare_kestra_init container_name: schoolcompare_kestra_init
command: flow namespace update schoolcompare.data /flows --no-delete
environment: environment:
KESTRA_CONFIGURATION: | KESTRA_CONFIGURATION: |
datasources: datasources:
@@ -138,8 +132,6 @@ services:
type: local type: local
local: local:
base-path: /tmp/kestra-init-storage base-path: /tmp/kestra-init-storage
command: >
flow namespace update schoolcompare.data /flows --no-delete
depends_on: depends_on:
kestra: kestra:
condition: service_healthy condition: service_healthy
@@ -149,9 +141,7 @@ services:
# Data integrator — Python microservice called by Kestra # Data integrator — Python microservice called by Kestra
integrator: integrator:
build: image: privaterepo.sitaru.org/tudor/school_compare-integrator:latest
context: ./integrator
dockerfile: Dockerfile
container_name: schoolcompare_integrator container_name: schoolcompare_integrator
ports: ports:
- "8001:8001" - "8001:8001"
@@ -162,7 +152,7 @@ services:
ADMIN_API_KEY: ${ADMIN_API_KEY:-changeme} ADMIN_API_KEY: ${ADMIN_API_KEY:-changeme}
PYTHONUNBUFFERED: 1 PYTHONUNBUFFERED: 1
volumes: volumes:
- ./data:/data - supplementary_data:/data
depends_on: depends_on:
db: db:
condition: service_healthy condition: service_healthy
@@ -183,3 +173,4 @@ networks:
volumes: volumes:
postgres_data: postgres_data:
kestra_storage: kestra_storage:
supplementary_data: