services: postgres: image: pgvector/pgvector:pg16 environment: POSTGRES_USER: ${POSTGRES_USER:-shop} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-shop} POSTGRES_DB: ${POSTGRES_DB:-shop} ports: - "5432:5432" volumes: - ./pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-shop}"] interval: 5s timeout: 3s retries: 10 redis: image: redis:7-alpine ports: - "6379:6379" meilisearch: image: getmeili/meilisearch:v1.10 environment: MEILI_MASTER_KEY: ${MEILI_KEY:-shop-dev-master-key} MEILI_ENV: development ports: - "7700:7700" volumes: - ./meili-data:/meili_data ollama: image: ollama/ollama:latest ports: - "11434:11434" volumes: - ./ollama-data:/root/.ollama deploy: resources: reservations: devices: - driver: nvidia count: all capabilities: [gpu] ollama-init: image: ollama/ollama:latest depends_on: - ollama volumes: - ./ollama-data:/root/.ollama entrypoint: ["/bin/sh", "-c"] command: > "sleep 5 && OLLAMA_HOST=ollama:11434 ollama pull llama3.1 && OLLAMA_HOST=ollama:11434 ollama pull nomic-embed-text && echo 'Models ready'" restart: "no" mailhog: image: mailhog/mailhog:latest ports: - "1025:1025" - "8025:8025"