Il servizio Docker di Discourse non si avvia correttamente

Volevo provare Discourse localmente, quindi ho usato Docker Compose per provare a configurarlo:

version: '3.8'

services:
  postgres:
    image: pgvector/pgvector:pg17
    container_name: discourse-postgres
    restart: always
    environment:
      POSTGRES_USER: discourse
      POSTGRES_PASSWORD: discourse
      POSTGRES_DB: discourse
      # Assicurati che l'estensione venga caricata correttamente
      # POSTGRES_INITDB_ARGS: "--enable-extensions=vector"
    volumes:
      - ./data/postgres:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U discourse && psql -U discourse -c 'SELECT * FROM pg_extension WHERE extname = ''vector'';'"]
      interval: 10s
      timeout: 5s
      retries: 5

  redis:
    image: redis:7-alpine
    container_name: discourse-redis
    restart: always
    volumes:
      - ./data/redis:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5

  discourse:
    image: discourse/discourse:stable
    container_name: discourse-app
    restart: always
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_healthy
    ports:
      - "80:80"
    environment:
      DISCOURSE_DB_HOST: postgres
      DISCOURSE_DB_USER: discourse
      DISCOURSE_DB_PASSWORD: discourse
      DISCOURSE_REDIS_HOST: redis
      DISCOURSE_DEVELOPER_EMAILS: "admin@example.com"
      DISCOURSE_HOSTNAME: "localhost"
      # Configurazione SMTP temporanea (da modificare con valori reali dopo l'avvio)
      DISCOURSE_SMTP_ADDRESS: "smtp.example.com"
      DISCOURSE_SMTP_PORT: 587
      DISCOURSE_SMTP_USER_NAME: "admin@example.com"
      DISCOURSE_SMTP_PASSWORD: "password"
      # Opzionale: disabilita le funzionalità AI non necessarie per ridurre le dipendenze di estensione (se necessario)
      DISCOURSE_DISABLE_VECTOR_SEARCH: "true"
    volumes:
      - ./data/discourse:/var/www/discourse/shared

Tuttavia, ho riscontrato un problema che mi impedisce di provare il forum Discourse:

discourse-postgres  | 2026-01-20 09:19:47.774 UTC [140] ERROR:  column "vector" does not exist at character 44
discourse-postgres  | 2026-01-20 09:19:47.774 UTC [140] STATEMENT:  SELECT * FROM pg_extension WHERE extname = vector;

Non so quale sia la causa, qualche utente esperto può darmi qualche indicazione?

Questo non è un Bug. Questa non è l’installazione locale supportata. Vedi dev-install

2 Mi Piace

È necessaria l’estensione pgvector per postgres. Inoltre, discourse non funzionerà senza https. Se si desidera davvero un’installazione locale, si dovrebbe usare l’installazione per lo sviluppo.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.