Ctrl K
ComunidadGuías…

docker-compose.dev.yml

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

Archivo original ↗Preguntar a KiBot
services:
  rallly_db:
    image: postgres:18-alpine
    restart: always
    ports:
      - "5450:5432"
    volumes:
      - db-data:/var/lib/postgresql
    environment:
      - POSTGRES_PASSWORD=postgres
      - POSTGRES_DB=rallly
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 5s
      timeout: 5s
      retries: 5
  redis:
    image: redis:7.4-alpine
    restart: always
    ports:
      - "6379:6379"
    volumes:
      - redis-data:/data
    healthcheck:
      test: ["CMD-SHELL", "redis-cli ping"]
      interval: 5s
      timeout: 5s
      retries: 5
  serverless-redis-http:
    ports:
      - "8079:80"
    image: hiett/serverless-redis-http:latest
    environment:
      SRH_MODE: env
      SRH_TOKEN: dev_fake_token_123456789abcdefghijklmnop
      SRH_CONNECTION_STRING: "redis://redis:6379"
  garage:
    image: dxflrs/garage:v2.3.0
    restart: always
    ports:
      - "3900:3900"
      - "3903:3903"
    volumes:
      - ./docker/garage.toml:/etc/garage.toml:ro
      - garage-meta:/var/lib/garage/meta
      - garage-data:/var/lib/garage/data
    environment:
      - GARAGE_DEFAULT_ACCESS_KEY=rallly-access-key
      - GARAGE_DEFAULT_SECRET_KEY=rallly-secret-key
      - GARAGE_DEFAULT_BUCKET=rallly
    command: /garage server --single-node --default-bucket
    healthcheck:
      test: ["CMD", "/garage", "stats", "-a"]
      interval: 1h
      timeout: 5s
      retries: 3
      start_period: 10s
      start_interval: 5s
  mailpit:
    image: axllent/mailpit
    ports:
      - "8025:8025"
      - "1025:1025"
    healthcheck:
      test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8025/readyz"]
      interval: 5s
      timeout: 5s
      retries: 5


  garage_init:
    image: amazon/aws-cli
    depends_on:
      garage:
        condition: service_healthy
    environment:
      - AWS_ACCESS_KEY_ID=rallly-access-key
      - AWS_SECRET_ACCESS_KEY=rallly-secret-key
      - AWS_DEFAULT_REGION=garage
    volumes:
      - ./docker/cors.json:/cors.json:ro
    entrypoint: ["sh", "-c", "aws --endpoint-url http://garage:3900 s3api put-bucket-cors --bucket rallly --cors-configuration file:///cors.json"]
    restart: "no"

volumes:
  db-data:
    driver: local
  redis-data:
    driver: local
  garage-meta:
    driver: local
  garage-data:
    driver: local