services.ymlΒΆ

---
lmstudio:
  healthcheck:
    flavor: curl
    path: lmstudio-greeting
  modes:
    compose:
      enabled: true
    swarm:
      enabled: true
  bond: 1
  enabled: true
  shared: true
  backup:
    stop_required: false
  image: ubuntu
  version: "22.04"
  custom: true
  app_version: 0.0.25-1
  update:
    key: app_version
    type: http_regex
    url: https://lmstudio.ai/install.sh
    pattern: 'APP_VERSION="([0-9][0-9.-]*)"'
  name: lmstudio
  # nocheck: min-storage-headroom  Reason: the build holds the llmster release archive (1.3 GB on arm64) beside its 2.3 GB extraction until the GPU backends are trimmed; the finished image keeps 1.4 GB on arm64
  min_storage: 4GB
  cpus: "4.0"
  mem_reservation: 6g
  mem_limit: 8g
  pids_limit: 2048
  ports:
    internal:
      http: 1234
  preload_models: "{{ AI_LOCAL_MODELS }}"
  preload_async_time: 3600
  preload_floor_seconds: 600
  preload_min_bytes_per_second: 1000000
  lifecycle: beta

# nocheck: playwright-service-flag, dynamic-flag
container_backup: # nocheck: bond-baseline
  bond: 1
  enabled: "{{ 'svc-bkp-volume-2-local' in group_names }}"
  shared: true

# nocheck: variants-coverage the role has a single variant, and the guide edge is not a dimension of it: a second round would differ only by the README replay
docs:
  bond: 0.5
  enabled: "{{ 'web-app-docs' in group_names }}"
  shared: "{{ 'web-app-docs' in group_names }}"