Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
92 lines (88 loc) · 5.76 KB
/
Copy pathdocker-compose.yml
File metadata and controls
92 lines (88 loc) · 5.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
services:
sim-search:
build:
context: .
dockerfile: Dockerfile
container_name: sim-search
restart: "no"
shm_size: "${SIMSEARCH_SHM_SIZE:-4gb}"
ports:
- "${SIMSEARCH_BIND_IP:-0.0.0.0}:${SIMSEARCH_PORT:-8942}:8942"
environment:
PORT: 8942
GUNICORN_PRELOAD: "${GUNICORN_PRELOAD:-1}"
GUNICORN_WORKER_CLASS: "${GUNICORN_WORKER_CLASS:-sync}"
GUNICORN_WORKERS: "${GUNICORN_WORKERS:-8}"
GUNICORN_THREADS: "${GUNICORN_THREADS:-1}"
GUNICORN_TIMEOUT: "${GUNICORN_TIMEOUT:-0}"
GUNICORN_GRACEFUL_TIMEOUT: "${GUNICORN_GRACEFUL_TIMEOUT:-120}"
GUNICORN_KEEPALIVE: "${GUNICORN_KEEPALIVE:-5}"
GUNICORN_MAX_REQUESTS: "${GUNICORN_MAX_REQUESTS:-0}"
GUNICORN_MAX_REQUESTS_JITTER: "${GUNICORN_MAX_REQUESTS_JITTER:-0}"
GUNICORN_WORKER_TMP_DIR: "${GUNICORN_WORKER_TMP_DIR:-/dev/shm}"
OMP_NUM_THREADS: "${OMP_NUM_THREADS:-1}"
OPENBLAS_NUM_THREADS: "${OPENBLAS_NUM_THREADS:-1}"
MKL_NUM_THREADS: "${MKL_NUM_THREADS:-1}"
NUMEXPR_NUM_THREADS: "${NUMEXPR_NUM_THREADS:-1}"
FAISS_NUM_THREADS: "${FAISS_NUM_THREADS:-1}"
FAISS_OPT_LEVEL: "${FAISS_OPT_LEVEL:-generic}"
SIMSEARCH_DEBUG_RESPONSE_HEADERS: "${SIMSEARCH_DEBUG_RESPONSE_HEADERS:-0}"
SIMSEARCH_KEEPALIVE_ENABLED: "${SIMSEARCH_KEEPALIVE_ENABLED:-1}"
SIMSEARCH_KEEPALIVE_INTERVAL_SECONDS: "${SIMSEARCH_KEEPALIVE_INTERVAL_SECONDS:-240}"
SIMSEARCH_KEEPALIVE_TIMEOUT_SECONDS: "${SIMSEARCH_KEEPALIVE_TIMEOUT_SECONDS:-20}"
SIMSEARCH_KEEPALIVE_URL_PATH: "${SIMSEARCH_KEEPALIVE_URL_PATH:-/api/startup-status/}"
SIMSEARCH_KEEPALIVE_HOST_HEADER: "${SIMSEARCH_KEEPALIVE_HOST_HEADER:-}"
DJANGO_DEBUG: "${DJANGO_DEBUG:-0}"
DJANGO_SECRET_KEY: "${DJANGO_SECRET_KEY:-change-me}"
DJANGO_ALLOWED_HOSTS: "${DJANGO_ALLOWED_HOSTS:-disa.fi.muni.cz,cybela14.fi.muni.cz,localhost,127.0.0.1}"
DJANGO_CSRF_TRUSTED_ORIGINS: "${DJANGO_CSRF_TRUSTED_ORIGINS:-http://disa.fi.muni.cz,https://disa.fi.muni.cz}"
DJANGO_USE_X_FORWARDED_HOST: "${DJANGO_USE_X_FORWARDED_HOST:-1}"
DJANGO_SECURE_PROXY_SSL_HEADER: "${DJANGO_SECURE_PROXY_SSL_HEADER:-1}"
DJANGO_FORCE_SCRIPT_NAME: "${DJANGO_FORCE_SCRIPT_NAME:-/demos/personalized-similarity-search}"
DJANGO_TIME_ZONE: "${DJANGO_TIME_ZONE:-Europe/Prague}"
DJANGO_DB_PATH: /app/runtime/db.sqlite3
DJANGO_DB_TIMEOUT: "${DJANGO_DB_TIMEOUT:-30}"
DJANGO_DB_CONN_MAX_AGE: "${DJANGO_DB_CONN_MAX_AGE:-60}"
DJANGO_DATA_UPLOAD_MAX_MEMORY_SIZE: "${DJANGO_DATA_UPLOAD_MAX_MEMORY_SIZE:-33554432}"
DJANGO_SESSION_ENGINE: "${DJANGO_SESSION_ENGINE:-django.contrib.sessions.backends.file}"
DJANGO_SESSION_FILE_PATH: /app/runtime/sessions
DJANGO_SQLITE_WAL: "${DJANGO_SQLITE_WAL:-1}"
DJANGO_SQLITE_BUSY_TIMEOUT_MS: "${DJANGO_SQLITE_BUSY_TIMEOUT_MS:-30000}"
DJANGO_SQLITE_SYNCHRONOUS: "${DJANGO_SQLITE_SYNCHRONOUS:-NORMAL}"
DJANGO_SQLITE_TEMP_STORE: "${DJANGO_SQLITE_TEMP_STORE:-MEMORY}"
DJANGO_SQLITE_MMAP_SIZE: "${DJANGO_SQLITE_MMAP_SIZE:-268435456}"
DJANGO_SQLITE_CACHE_SIZE: "${DJANGO_SQLITE_CACHE_SIZE:--65536}"
# Sim-search runtime
SIMSEARCH_AUTO_LOAD_DATASET: "${SIMSEARCH_AUTO_LOAD_DATASET:-1}"
SIMSEARCH_AUTO_LOAD_BACKGROUND: "${SIMSEARCH_AUTO_LOAD_BACKGROUND:-0}"
SIMSEARCH_AUTO_LOAD_CLIP_MODEL: "${SIMSEARCH_AUTO_LOAD_CLIP_MODEL:-1}"
DISA_BASE_URL: "${DISA_BASE_URL:-}"
ALTERNATIVE_IMAGES_BASE_URL: "${ALTERNATIVE_IMAGES_BASE_URL:-}"
USE_DISA_PROFIMEDIA: "${USE_DISA_PROFIMEDIA:-true}"
SIMSEARCH_IMAGE_BASE_PATH: "${SIMSEARCH_IMAGE_BASE_PATH:-/share/datasets/profimedia/data-images}"
SIMSEARCH_FEATURES_DIR: "${SIMSEARCH_FEATURES_DIR:-/share/datasets/profimedia/features-CLIP/ViT-L14}"
SIMSEARCH_CLIP_MODEL_PATH: "${SIMSEARCH_CLIP_MODEL_PATH:-/home/xsikyna/clip/ViT-L-14.pt}"
SIMSEARCH_USE_FAISS_INDEX: "${SIMSEARCH_USE_FAISS_INDEX:-1}"
SIMSEARCH_ENABLE_FAISS_L2_INDEX: "${SIMSEARCH_ENABLE_FAISS_L2_INDEX:-1}"
SIMSEARCH_ENABLE_FAISS_IP_INDEX: "${SIMSEARCH_ENABLE_FAISS_IP_INDEX:-1}"
SIMSEARCH_FAISS_SKIP_TXT_LOAD: "${SIMSEARCH_FAISS_SKIP_TXT_LOAD:-1}"
SIMSEARCH_FAISS_L2_INDEX: "${SIMSEARCH_FAISS_L2_INDEX:-/home/xsikyna/Indices/AutofaissL2/Profimedia_AutofaissL2_21000000_current_memory_available-128G_max_index_memory_usage-32G_max_index_query_time_ms-0.0001_min_nearest_neighbors_to_retrieve-10.faiss}"
SIMSEARCH_FAISS_IP_INDEX: "${SIMSEARCH_FAISS_IP_INDEX:-/home/xsikyna/Indices/AutofaissIP/Profimedia_AutofaissIP_21000000_current_memory_available-128G_max_index_memory_usage-32G_max_index_query_time_ms-1_min_nearest_neighbors_to_retrieve-10.faiss}"
SIMSEARCH_IMAGE_NAMES_FILE_L2: "${SIMSEARCH_IMAGE_NAMES_FILE_L2:-/app/cache/L2/21000000_ids.npy}"
SIMSEARCH_IMAGE_NAMES_FILE_IP: "${SIMSEARCH_IMAGE_NAMES_FILE_IP:-/app/cache/IP/21000000_ids.npy}"
SIMSEARCH_IMAGE_X_SENDFILE: "${SIMSEARCH_IMAGE_X_SENDFILE:-0}"
SIMSEARCH_IMAGE_X_ACCEL_REDIRECT_PREFIX: "${SIMSEARCH_IMAGE_X_ACCEL_REDIRECT_PREFIX:-}"
SIMSEARCH_QUERY_LOG_RESULTS_COUNT: "${SIMSEARCH_QUERY_LOG_RESULTS_COUNT:-100}"
SIMSEARCH_QUERY_LOG_EXPAND_RESULTS: "${SIMSEARCH_QUERY_LOG_EXPAND_RESULTS:-0}"
SIMSEARCH_MATRIX_CACHE_SIZE: "${SIMSEARCH_MATRIX_CACHE_SIZE:-32}"
SIMSEARCH_CLEAR_USER_MATRICES_ON_START: "${SIMSEARCH_CLEAR_USER_MATRICES_ON_START:-0}"
SIMSEARCH_PRESERVE_USER_MATRICES_DIRS: "${SIMSEARCH_PRESERVE_USER_MATRICES_DIRS:-}"
volumes:
# Persistent app state
- ./runtime:/app/runtime
- ./user_matrices:/app/user_matrices
- ./cache:/app/cache
# Host data/model/index mounts
- ${SIMSEARCH_DATASET_ROOT:-/share/datasets/profimedia}:/share/datasets/profimedia:ro
- ${SIMSEARCH_INDICES_ROOT:-/home/xsikyna/Indices}:/home/xsikyna/Indices:ro
- ${SIMSEARCH_CLIP_ROOT:-/home/xsikyna/clip}:/home/xsikyna/clip:ro