Ctrl K
ComunidadGuías…

docker-compose.build.yaml

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

Archivo original ↗Preguntar a KiBot
volumes:
  libsql-data:
  redis-data:

services:
  redis:
    image: redis:7-alpine
    volumes:
      - redis-data:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 2s
      timeout: 5s
      retries: 10
      start_period: 2s
  libsql:
    image: ghcr.io/tursodatabase/libsql-server:latest
    volumes:
      - libsql-data:/var/lib/sqld
    command: ["sqld", "--http-listen-addr", "0.0.0.0:8080"]
    healthcheck:
      test: ["CMD-SHELL", "kill -0 1"]
      interval: 2s
      timeout: 5s
      retries: 10
      start_period: 2s
    environment:
      SQLD_NODE: primary
  server:
    build:
      context: .
      dockerfile: Dockerfile
      args:
        DATABASE_URL: http://libsql:8080
        BETTER_AUTH_SECRET: ${BETTER_AUTH_SECRET}
    environment:
      NODE_ENV: production
      DATABASE_URL: http://libsql:8080
      KV_STORE: ioredis
      REDIS_URL: redis://redis:6379
      PUBLIC_BASE_URL: ${PUBLIC_BASE_URL:-${VITE_PUBLIC_BASE_URL:-}}
      PUBLIC_IS_MAIN_INSTANCE: "false"
      BETTER_AUTH_SECRET: ${BETTER_AUTH_SECRET}
      FROM_EMAIL_ADDRESS: ${FROM_EMAIL_ADDRESS}
      RESEND_API_KEY: ${RESEND_API_KEY}
      SENDGRID_API_KEY: ${SENDGRID_API_KEY}
      PUBLIC_SUPPORT_EMAIL_ADDRESS: ${PUBLIC_SUPPORT_EMAIL_ADDRESS:-${VITE_PUBLIC_SUPPORT_EMAIL_ADDRESS:-}}
      PUBLIC_SENTRY_DSN_WEB: ${PUBLIC_SENTRY_DSN_WEB:-${VITE_PUBLIC_SENTRY_DSN_WEB:-}}
      PUBLIC_UMAMI_WEBSITE_ID: ${PUBLIC_UMAMI_WEBSITE_ID:-${VITE_PUBLIC_UMAMI_WEBSITE_ID:-}}
      PUBLIC_UMAMI_SRC: ${PUBLIC_UMAMI_SRC:-${VITE_PUBLIC_UMAMI_SRC:-}}
      INSTAPAPER_OAUTH_ID: ${INSTAPAPER_OAUTH_ID}
      INSTAPAPER_OAUTH_SECRET: ${INSTAPAPER_OAUTH_SECRET}
      PUBLIC_IS_MAINTENANCE_MODE: ${PUBLIC_IS_MAINTENANCE_MODE:-${VITE_PUBLIC_IS_MAINTENANCE_MODE:-}}
    depends_on:
      libsql:
        condition: service_healthy
        required: false
      redis:
        condition: service_healthy
        required: true
    ports:
      - 3000:3000