56 lines
2.3 KiB
Django/Jinja
56 lines
2.3 KiB
Django/Jinja
# See versions: https://github.com/gramps-project/gramps-web/pkgs/container/grampsweb
|
|
|
|
services:
|
|
|
|
gramps_app: &gramps_app
|
|
image: ghcr.io/gramps-project/grampsweb:v25.4.1
|
|
container_name: gramps_app
|
|
depends_on:
|
|
- gramps_redis
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:{{ gramps_port }}:5000" # host:docker
|
|
environment:
|
|
GRAMPSWEB_TREE: "Gramps" # will create a new tree if not exists
|
|
GRAMPSWEB_SECRET_KEY: "{{ gramps_secret_key }}"
|
|
GRAMPSWEB_BASE_URL: "https://gramps.vakhrushev.me"
|
|
GRAMPSWEB_REGISTRATION_DISABLED: "true"
|
|
GRAMPSWEB_CELERY_CONFIG__broker_url: "redis://gramps_redis:6379/0"
|
|
GRAMPSWEB_CELERY_CONFIG__result_backend: "redis://gramps_redis:6379/0"
|
|
GRAMPSWEB_RATELIMIT_STORAGE_URI: "redis://gramps_redis:6379/1"
|
|
GRAMPSWEB_EMAIL_HOST: "{{ postbox_host }}"
|
|
GRAMPSWEB_EMAIL_PORT: "{{ postbox_port }}"
|
|
GRAMPSWEB_EMAIL_HOST_USER: "{{ postbox_user }}"
|
|
GRAMPSWEB_EMAIL_HOST_PASSWORD: "{{ postbox_pass }}"
|
|
GRAMPSWEB_EMAIL_USE_TLS: "false"
|
|
GRAMPSWEB_DEFAULT_FROM_EMAIL: "gramps@vakhrushev.me"
|
|
GUNICORN_NUM_WORKERS: 2
|
|
# media storage at s3
|
|
GRAMPSWEB_MEDIA_BASE_DIR: "s3://av-gramps-media-storage"
|
|
AWS_ENDPOINT_URL: "{{ gramps_s3_endpoint }}"
|
|
AWS_ACCESS_KEY_ID: "{{ gramps_s3_access_key_id }}"
|
|
AWS_SECRET_ACCESS_KEY: "{{ gramps_s3_secret_access_key }}"
|
|
AWS_DEFAULT_REGION: "{{ gramps_s3_region }}"
|
|
volumes:
|
|
- ./data/gramps_users:/app/users # persist user database
|
|
- ./data/gramps_index:/app/indexdir # persist search index
|
|
- ./data/gramps_thumb_cache:/app/thumbnail_cache # persist thumbnails
|
|
- ./data/gramps_cache:/app/cache # persist export and report caches
|
|
- ./data/gramps_secret:/app/secret # persist flask secret
|
|
- ./data/gramps_db:/root/.gramps/grampsdb # persist Gramps database
|
|
- ./data/gramps_media:/app/media # persist media files
|
|
|
|
gramps_celery:
|
|
<<: *gramps_app # YAML merge key copying the entire grampsweb service config
|
|
container_name: gramps_celery
|
|
depends_on:
|
|
- gramps_redis
|
|
restart: unless-stopped
|
|
ports: []
|
|
command: celery -A gramps_webapi.celery worker --loglevel=INFO --concurrency=2
|
|
|
|
gramps_redis:
|
|
image: valkey/valkey:8.1.1-alpine
|
|
container_name: gramps_redis
|
|
restart: unless-stopped
|