Ctrl K
ComunidadGuías…

docker-compose.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
services:
  postgres:
    image: pgvector/pgvector:pg17
    restart: unless-stopped
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: cossistant
    volumes:
      - postgres_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 10s
      timeout: 5s
      retries: 5

  redis:
    image: redis:7-alpine
    restart: unless-stopped
    ports:
      - "6379:6379"
    volumes:
      - redis_data:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5

  geoip:
    build:
      context: ./apps/geoip
      dockerfile: Dockerfile
    restart: unless-stopped
    ports:
      - "8083:8080"
    environment:
      MAXMIND_ACCOUNT_ID: ${MAXMIND_ACCOUNT_ID:-}
      MAXMIND_LICENSE_KEY: ${MAXMIND_LICENSE_KEY:-}
      MAXMIND_EDITION_IDS: ${MAXMIND_EDITION_IDS:-GeoLite2-City GeoLite2-ASN}
      GEOIP_DB_DIR: /data/geoip
      GEOIP_UPDATE_INTERVAL_HOURS: ${GEOIP_UPDATE_INTERVAL_HOURS:-24}
      PORT: 8080
    volumes:
      - geoip_data:/data/geoip
    healthcheck:
      test:
        [
          "CMD",
          "python",
          "-c",
          "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8080/health')",
        ]
      interval: 30s
      timeout: 5s
      retries: 5

volumes:
  postgres_data:
  redis_data:
  geoip_data: