services: ollama: image: ollama/ollama:0.32.0@sha256:57f573b47f1f71ebb445789f279fe3e596a8beab182f7cf486db9205bad87c5a ports: - "127.0.0.1:11434:11434" # or "127.0.0.1:11435:11434" volumes: - ollama-data:/root/.ollama environment: - OLLAMA_HOST=0.0.0.0 healthcheck: test: ["CMD", "ollama", "list"] interval: 10s timeout: 10s retries: 30 # ~5 minutes total start_period: 60s restart: unless-stopped presidio-anonymizer: image: ${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-anonymizer${TAG} build: context: ./presidio-anonymizer cache_from: - type=registry,ref=${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-anonymizer:latest environment: - PORT=5001 ports: - "5001:5001" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:5001/health"] interval: 30s timeout: 3s start_period: 30s retries: 3 restart: unless-stopped presidio-analyzer: image: ${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-analyzer${TAG} build: context: ./presidio-analyzer cache_from: - type=registry,ref=${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-analyzer:latest environment: - PORT=5001 - OLLAMA_HOST=http://ollama:11434 ports: - "5002:5001" depends_on: ollama: condition: service_healthy healthcheck: test: ["CMD", "curl", "-f", "http://localhost:5001/health"] interval: 30s timeout: 3s start_period: 30s retries: 3 restart: unless-stopped presidio-image-redactor: image: ${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-image-redactor${TAG} build: context: ./presidio-image-redactor cache_from: - type=registry,ref=${REGISTRY_NAME}/${IMAGE_PREFIX}presidio-image-redactor:latest environment: - PORT=5001 ports: - "5003:5001" healthcheck: test: ["CMD", "curl", "-f", "http://localhost:5001/health"] interval: 30s timeout: 3s start_period: 30s retries: 3 restart: unless-stopped volumes: ollama-data: