services: web: image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSION:-release} container_name: karakeep volumes: - /opt/stacks/karakeep/localdata/data:/data ports: - 17001:3000 environment: HOARDER_VERSION: ${HOARDER_VERSION} NEXTAUTH_SECRET: ${NEXTAUTH_SECRET} MEILI_MASTER_KEY: ${MEILI_MASTER_KEY} NEXTAUTH_URL: ${NEXTAUTH_URL} MAX_ASSET_SIZE_MB: ${MAX_ASSET_SIZE_MB} OPENAI_API_KEY: ${OPENAI_API_KEY} OPENAI_BASE_URL: ${OPENAI_BASE_URL} INFERENCE_TEXT_MODEL: ${INFERENCE_TEXT_MODEL} INFERENCE_IMAGE_MODEL: ${INFERENCE_IMAGE_MODEL} INFERENCE_CONTEXT_LENGTH: ${INFERENCE_CONTEXT_LENGTH} INFERENCE_JOB_TIMEOUT_SEC: ${INFERENCE_JOB_TIMEOUT_SEC} DISABLE_SIGNUPS: ${DISABLE_SIGNUPS} OAUTH_WELLKNOWN_URL: ${OAUTH_WELLKNOWN_URL} OAUTH_CLIENT_ID: ${OAUTH_CLIENT_ID} OAUTH_CLIENT_SECRET: ${OAUTH_CLIENT_SECRET} OAUTH_PROVIDER_NAME: ${OAUTH_PROVIDER_NAME} OAUTH_ALLOW_DANGEROUS_EMAIL_ACCOUNT_LINKING: ${OAUTH_ALLOW_DANGEROUS_EMAIL_ACCOUNT_LINKING} MEILI_ADDR: http://meilisearch:7700 BROWSER_WEB_URL: http://chrome:9222 DATA_DIR: /data deploy: resources: limits: cpus: '1.0' memory: 2G reservations: cpus: '0.5' memory: 1G healthcheck: test: - CMD - curl - -f - http://localhost:3000/api/health interval: 30s timeout: 10s retries: 3 start_period: 40s networks: - default restart: unless-stopped labels: - homepage.group=productivity - homepage.name=Karakeep - homepage.icon=sh-karakeep - homepage.href=https://hoarder.nuclide.systems - homepage.instance.internal.href=http://192.168.1.40:17001 - homepage.instance.public.href=https://hoarder.nuclide.systems - homepage.widget.type=karakeep - homepage.widget.url=http://192.168.1.40:17001 - homepage.widget.key=ak2_19817764ad2d3b7bc010_add146880ec70ee560cc8fbf87b46085 chrome: image: gcr.io/zenika-hub/alpine-chrome:123 container_name: karakeep_chrome shm_size: 512m command: - --no-sandbox - --disable-gpu - --disable-dev-shm-usage - --remote-debugging-address=0.0.0.0 - --remote-debugging-port=9222 - --hide-scrollbars deploy: resources: limits: cpus: '0.5' memory: 1G reservations: cpus: '0.25' memory: 512M healthcheck: test: - CMD - wget - -q - -O - /dev/null - http://127.0.0.1:9222/json/version interval: 30s timeout: 10s retries: 3 start_period: 40s restart: unless-stopped meilisearch: image: getmeili/meilisearch:v1.11.1 container_name: karakeep_meilisearch environment: MEILI_MASTER_KEY: ${MEILI_MASTER_KEY} MEILI_NO_ANALYTICS: 'true' volumes: - /opt/stacks/karakeep/localdata/meili:/meili_data deploy: resources: limits: cpus: '1.0' memory: 2G reservations: cpus: '0.5' memory: 1G healthcheck: test: - CMD - curl - -f - http://localhost:7700/health interval: 30s timeout: 10s retries: 3 start_period: 40s restart: unless-stopped networks: default: external: true name: shared_backend