proxmox-lxc-autoscale

Self-Hosted Apps Configuration Snippets

Introduction

This collection provides optimized configuration files for popular self-hosted applications, helping you easily manage resource allocation and scaling in your LXC containers. Each configuration snippet is designed to balance minimal and recommended hardware requirements, ensuring efficient and scalable performance for your self-hosted environments.

[!IMPORTANT] When using the configuration snippets provided on this page for various self-hosted applications, it is crucial to define these TIER-specific configurations after the DEFAULT section in your configuration file. This ensures that any specific settings in the TIER_ configurations will override the relevant default settings, allowing for fine-tuned control of each application’s resource allocation and scaling behavior.

In addition to defining the TIER configurations after the DEFAULT section, you must carefully consider the following DEFAULT settings, as they play a critical role in the overall performance and stability of your environment:

Summary

Below is a list of available configuration snippets. Click on any link to jump directly to the relevant configuration:

  1. Nextcloud
  2. Jellyfin
  3. Plex
  4. Bitwarden
  5. Home Assistant
  6. Grafana
  7. GitLab
  8. Mattermost
  9. Gitea
  10. Uptime Kuma
  11. MediaWiki
  12. BookStack
  13. Paperless
  14. Matomo
  15. Pi-hole
  16. Ghost
  17. Miniflux
  18. Trilium Notes
  19. Vaultwarden
  20. PhotoPrism
  21. Ghost
  22. Miniflux
  23. Trilium Notes
  24. Vaultwarden
  25. PhotoPrism
  26. Ampache
  27. OpenProject
  28. Kanboard
  29. Etherpad
  30. MediaGoblin
  31. Tiny Tiny RSS
  32. Redmine
  33. Seafile
  34. Wallabag
  35. Rocket.Chat
  36. Paperwork
  37. Diaspora
  38. Limesurvey
  39. Paperless
  40. Matomo

Configuration Snippets

Nextcloud Configuration

TIER_NEXTCLOUD:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 16384  # in MB
  lxc_containers: 
    - 999  # Replace with the Nextcloud container ID

Jellyfin Configuration

TIER_JELLYFIN:
  cpu_upper_threshold: 90
  cpu_lower_threshold: 25
  memory_upper_threshold: 90
  memory_lower_threshold: 25
  min_cores: 4
  max_cores: 8
  min_memory: 4096  # in MB
  max_memory: 16384  # in MB
  lxc_containers: 
    - 999  # Replace with the Jellyfin container ID

Plex Configuration

TIER_PLEX:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 16384  # in MB
  lxc_containers: 
    - 999  # Replace with the Plex container ID

Bitwarden Configuration

TIER_BITWARDEN:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 4
  min_memory: 512  # in MB
  max_memory: 2048  # in MB
  lxc_containers: 
    - 999  # Replace with the Bitwarden container ID

Home Assistant Configuration

TIER_HOME_ASSISTANT:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Home Assistant container ID

Grafana Configuration

TIER_GRAFANA:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 4
  min_memory: 512  # in MB
  max_memory: 2048  # in MB
  lxc_containers: 
    - 999  # Replace with the Grafana container ID

GitLab Configuration

TIER_GITLAB:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 4
  max_cores: 8
  min_memory: 4096  # in MB
  max_memory: 16384  # in MB
  lxc_containers: 
    - 999  # Replace with the GitLab container ID

Mattermost Configuration

TIER_MATTERMOST:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 4
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Mattermost container ID

Gitea Configuration

TIER_GITEA:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 4
  min_memory: 512  # in MB
  max_memory: 2048  # in MB
  lxc_containers: 
    - 999  # Replace with the Gitea container ID

Uptime Kuma Configuration

TIER_UPTIME_KUMA:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Uptime Kuma container ID

MediaWiki Configuration

TIER_MEDIAWIKI:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the MediaWiki container ID

BookStack Configuration

TIER_BOOKSTACK:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the BookStack container ID

Paperless Configuration

TIER_PAPERLESS:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Paperless container ID

Matomo Configuration

TIER_MATOMO:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 4
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Matomo container ID

Pi-hole Configuration

TIER_PIHOLE:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc

Ghost Configuration

TIER_GHOST:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Ghost container ID

Miniflux Configuration

TIER_MINIFLUX:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Miniflux container ID

Trilium Notes Configuration

TIER_TRILIUM_NOTES:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Trilium Notes container ID

Vaultwarden Configuration

TIER_VAULTWARDEN:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Vaultwarden container ID

PhotoPrism Configuration

TIER_PHOTOPRISM:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the PhotoPrism container ID

Ampache Configuration

TIER_AMPACHE:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Ampache container ID

OpenProject Configuration

TIER_OPENPROJECT:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the OpenProject container ID

Kanboard Configuration

TIER_KANBOARD:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Kanboard container ID

Etherpad Configuration

TIER_ETHERPAD:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Etherpad container ID

MediaGoblin Configuration

TIER_MEDIAGOBLIN:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the MediaGoblin container ID

Tiny Tiny RSS Configuration

TIER_TINY_TINY_RSS:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Tiny Tiny RSS container ID

Redmine Configuration

TIER_REDMINE:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Redmine container ID

Seafile Configuration

TIER_SEAFILE:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Seafile container ID

Wallabag Configuration

TIER_WALLABAG:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Wallabag container ID

Rocket.Chat Configuration

TIER_ROCKETCHAT:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Rocket.Chat container ID

Paperwork Configuration

TIER_PAPERWORK:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 2
  min_memory: 512  # in MB
  max_memory: 1024  # in MB
  lxc_containers: 
    - 999  # Replace with the Paperwork container ID

Diaspora Configuration

TIER_DIASPORA:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 8
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Diaspora container ID

Limesurvey Configuration

TIER_LIMESURVEY:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 1
  max_cores: 4
  min_memory: 512  # in MB
  max_memory: 2048  # in MB
  lxc_containers: 
    - 999  # Replace with the Limesurvey container ID

Paperless Configuration

TIER_PAPERLESS:
  cpu_upper_threshold: 80
  cpu_lower_threshold: 15
  memory_upper_threshold: 80
  memory_lower_threshold: 15
  min_cores: 2
  max_cores: 4
  min_memory: 1024  # in MB
  max_memory: 4096  # in MB
  lxc_containers: 
    - 999  # Replace with the Paperless container ID

Matomo Configuration

TIER_MATOMO:
  cpu_upper_threshold: 85
  cpu_lower_threshold: 20
  memory_upper_threshold: 85
  memory_lower_threshold: 20
  min_cores: 2
  max_cores: 4
  min_memory: 2048  # in MB
  max_memory: 8192  # in MB
  lxc_containers: 
    - 999  # Replace with the Matomo container ID