services: redis: image: redis:7.4.8-bookworm container_name: np-redis restart: always mem_limit: 3g command: ["redis-server", "--appendonly", "yes", "--appendfsync", "everysec", "--save", "60", "1"] volumes: - ./runtime/redis:/data np-replica: image: 100.64.0.2:13000/lihato/np_app:v5.4-nupack4.1.0.1 build: context: . dockerfile: Dockerfile container_name: np-replica restart: always mem_limit: 4g depends_on: - redis volumes: - ./runtime/account:/data ports: - "100.64.0.2:18765:18765" environment: NP_HOST: 0.0.0.0 NP_PORT: 18765 NP_RUN_MODE: server NP_REDIS_URL: redis://redis:6379/0 NP_ACCOUNT_DB_PATH: /data/np-replica.sqlite3 NP_AUTH_REQUIRED: 1 NP_OIDC_ISSUER: https://auth.lihato.icu/application/o/nupack-account-npt/ NP_OIDC_CLIENT_ID: npt-replica-web NP_OIDC_REDIRECT_URI: https://npt.lihato.icu/auth/callback NP_OIDC_POST_LOGOUT_URI: https://npt.lihato.icu/ NP_ADMIN_TOKEN: ${NP_ADMIN_TOKEN:-} NP_ADMIN_SESSION_TTL_SECONDS: ${NP_ADMIN_SESSION_TTL_SECONDS:-28800} NP_ADMIN_COOKIE_SECURE: ${NP_ADMIN_COOKIE_SECURE:-1} NP_JOB_TTL_SECONDS: 3600 NP_WORKER_CONCURRENCY: auto NP_PER_JOB_THREAD_LIMIT: 4 NP_NUPACK_CACHE_GB: 8.0 NP_WORKER_MEMORY_RESERVE_GB: 4.0 NP_ESTIMATED_JOB_MEMORY_GB: 9.0 OMP_NUM_THREADS: 4 OPENBLAS_NUM_THREADS: 4 MKL_NUM_THREADS: 4 NUMEXPR_NUM_THREADS: 4 VECLIB_MAXIMUM_THREADS: 4 GOTO_NUM_THREADS: 4 np-worker: image: 100.64.0.2:13000/lihato/np_app:v5.4-nupack4.1.0.1 container_name: np-worker restart: always mem_limit: 56g depends_on: - redis volumes: - ./runtime/account:/data environment: NP_RUN_MODE: worker NP_REDIS_URL: redis://redis:6379/0 NP_ACCOUNT_DB_PATH: /data/np-replica.sqlite3 NP_JOB_TTL_SECONDS: 3600 NP_WORKER_CONCURRENCY: auto NP_PER_JOB_THREAD_LIMIT: 4 NP_NUPACK_CACHE_GB: 8.0 NP_WORKER_MEMORY_RESERVE_GB: 4.0 NP_ESTIMATED_JOB_MEMORY_GB: 9.0 OMP_NUM_THREADS: 4 OPENBLAS_NUM_THREADS: 4 MKL_NUM_THREADS: 4 NUMEXPR_NUM_THREADS: 4 VECLIB_MAXIMUM_THREADS: 4 GOTO_NUM_THREADS: 4