version: '3.7' x-backend: &backend image: papermerge/papermerge:2.1.9 volumes: - media_root:/app/media - xapian_index:/app/xapian_index environment: - PAPERMERGE__MAIN__SECRET_KEY=${SECRET_KEY} - PAPERMERGE__DATABASE__TYPE=postgres - PAPERMERGE__DATABASE__USER=${DB_USER} - PAPERMERGE__DATABASE__NAME=${DB_NAME} - PAPERMERGE__DATABASE__PASSWORD=${DB_PASSWORD} - PAPERMERGE__DATABASE__HOST=${DB_HOST} - PAPERMERGE__REDIS__HOST=redis - PAPERMERGE__REDIS__PORT=6379 - PAPERMERGE__SEARCH__PATH=/app/xapian_index - DJANGO_SUPERUSER_USERNAME=${SUPERUSER_USERNAME} - DJANGO_SUPERUSER_EMAIL=${SUPERUSER_EMAIL} - DJANGO_SUPERUSER_PASSWORD=${SUPERUSER_PASSWORD} - DJANGO_SETTINGS_MODULE=config.settings services: worker: <<: *backend command: worker backend: <<: *backend ports: - '16000:8000' db: image: postgres:14.4 volumes: - postgres_data:/var/lib/postgresql/data/ environment: - POSTGRES_USER=${DB_USER} - POSTGRES_DB=${DB_NAME} - POSTGRES_PASSWORD=${DB_PASSWORD} redis: image: 'redis:6' ports: - '6379:6379' volumes: - redis_data:/data - "/var/run/docker.sock:/var/run/docker.sock:ro" volumes: postgres_data: media_root: xapian_index: redis_data: