version: '2'

services:
  postgres:
    image: 'postgres:15.1'
    env_file:
      - '.env'
    volumes:
      - './pgdata:/var/lib/postgresql/data'
    ports:
      - '5433:5432'

  pgadmin4:
    image: 'dpage/pgadmin4'
    env_file:
      - '.env'
    ports:
      - '800:80'

  redis-overcommit:
    build: https://github.com/bkuhl/redis-overcommit-on-host.git
    restart: 'no'
    privileged: true
    volumes:
    - /proc/sys/vm:/mnt/vm

  redis:
    image: 'redis:7.0.5'
    command: redis-server /etc/redis/redis.conf
    volumes:
      - './redis/conf:/etc/redis'
      - './redis/data:/var/lib/redis/data'
    ports:
      - '6379:6379'
    depends_on:
      - redis-overcommit

  website:
    build: .
    command: >
      gunicorn -b 0.0.0.0:8181
        --access-logfile -
        --workers 10
        --timeout 900
        --reload
        "recovery.app:create_app()"
    env_file:
      - '.env'
    volumes:
      - '.:/recovery'
    ports:
      - '8181:8181'

#  celery:
#    build: .
#    command: celery worker -l info -A snakeeyes.blueprints.contact.tasks
#    env_file:
#      - '.env'
#    volumes:
#      - '.:/snakeeyes'

volumes:
  postgres:
  redis:
