services.ymlΒΆ

---
# nocheck: dynamic-flag
# nocheck: logout
logout:
  enabled: false
  shared: false
# nocheck: dynamic-flag
# nocheck: oidc
# nocheck: sso
sso:
  enabled: false
  shared: false
dashboard:
  bond: 1
  enabled: "{{ 'web-app-dashboard' in group_names }}"
  shared: "{{ 'web-app-dashboard' in group_names }}"
matomo:
  bond: 1
  enabled: "{{ 'web-app-matomo' in group_names }}"
  shared: "{{ 'web-app-matomo' in group_names }}"
docs:
  bond: 1
  enabled: true
  shared: true
  modes:
    compose:
      enabled: true
    swarm:
      enabled: true
  image: python
  version: 3.13-slim
  custom: true
  source_repository: "{{ SOFTWARE_REPOSITORY }}"
  mermaid_version: 12.1.0
  mermaid_sha256: 6484afc32872a3aa16cac9a76ba1816a1ed4cc870a6593cc2e17757750f518b2
  update:
    - key: mermaid_version
      type: npm
      package: mermaid
      checksum_key: mermaid_sha256
      checksum_url: "https://cdn.jsdelivr.net/npm/mermaid@{version}/dist/mermaid.min.js"
  fetch_interval: 900
  build:
    sphinx_process_mb: 5120
    sphinx_overhead_mb: 5632
  sphinx:
    project: "{{ SOFTWARE_NAME }}"
    copyright: "2025, {{ INVENTOR }}"
    author: "{{ INVENTOR }}"
  i18n:
    preload_languages:
      - "{{ HOST_LL }}"
  # nocheck: min-storage-headroom  Reason: the image built on the python base (1.1 GB), the English sites of the deployed working tree and of the latest commit (2.3 GB each), one translated site of each (about 2 GB each, built without _sources) and the scratch of a running build (2.4 GB); of the release tags only the three opened last stay on disk, each adding about 3.3 GB with its prepared tree, and every further translated language opened adds about 2 GB
  min_storage: 25GB
  backup:
    stop_required: false
  name: docs
  ports:
    internal:
      http: 8000
    local:
      http: 8036
  healthcheck:
    flavor: http_status
  run_after:
    - web-app-matomo
  lifecycle: beta
  cpus: "95%"
  mem_reservation: 512m
  mem_limit: "{{ (lookup('resource', 'host_mem_mb') | int) * 2 // 3 }}M"
  pids_limit: 512
# nocheck: playwright-service-flag β€” design consumer, no Playwright surface (provider: web-svc-design)
design:
  bond: 1
  enabled: "{{ 'web-svc-design' in group_names }}"
  shared: "{{ 'web-svc-design' in group_names }}"
  slots:
    sidebar-logo:
      width: 240
      height: 64
# nocheck: email
# nocheck: dynamic-flag
email:
  enabled: false
  shared: false
prometheus:
  bond: 1
  enabled: "{{ 'web-app-prometheus' in group_names }}"
  shared: "{{ 'web-app-prometheus' in group_names }}"

# nocheck: playwright-service-flag
# nocheck: variants-coverage β€” sso-variant-tor requires the onion on in every variant, so the false polarity has no variant left to live in
tor:
  bond: 0.5
  enabled: "{{ 'svc-net-tor' in group_names }}"
  shared: true # nocheck: dynamic-flag