/
/
/
Ansible role that deployes services on my runner machine
1---
2# Runner Services Role - Variables
3
4# Container image versions (can be overridden)
5container_images:
6 # LLM Stack services
7 ollama: "ollama/ollama:latest"
8 openwebui: "ghcr.io/open-webui/open-webui:main"
9 litellm: "ghcr.io/berriai/litellm:main-latest"
10
11 # Hardware-dependent services (conditional logic in templates)
12 frigate: "ghcr.io/blakeblackshear/frigate:stable"
13 immich_server: "ghcr.io/immich-app/immich-server:release"
14 immich_machine_learning: "ghcr.io/immich-app/immich-machine-learning:release"
15
16 # Core services
17 forgejo: "codeberg.org/forgejo/forgejo:12"
18 forgejo_runner: "data.forgejo.org/forgejo/runner:9.1.1"
19
20 # Productivity services
21 stirling_pdf: "frooodle/s-pdf:latest"
22 tandoor: "vabene1111/recipes:latest"
23 ghost: "ghost:5-alpine"
24
25 # Database services
26 postgres: "postgres:15-alpine"
27 mysql: "mysql:8.0"
28 redis: "redis:7-alpine"
29
30# Default resource limits per service type
31resource_profiles:
32 lightweight:
33 memory_limit: "512m"
34 cpu_limit: "0.5"
35 standard:
36 memory_limit: "1g"
37 cpu_limit: "1"
38 heavy:
39 memory_limit: "2g"
40 cpu_limit: "2"
41 intensive:
42 memory_limit: "4g"
43 cpu_limit: "4"
44
45# Service classifications
46service_profiles:
47 frigate: "intensive"
48 immich_server: "heavy"
49 immich_ml: "intensive"
50 postgres: "standard"
51 mysql: "standard"
52 redis: "lightweight"
53 forgejo: "standard"
54 stirling_pdf: "standard"
55 caddy: "lightweight"
56 tandoor: "standard"
57 ghost: "standard"
58
59# Hardware acceleration options
60hardware_acceleration_options:
61 - "none"
62 - "vaapi"
63 - "nvdec"
64 - "qsv"
65
66# Database types supported
67supported_databases:
68 - "sqlite3"
69 - "postgresql"
70 - "mysql"
71
72# Network port ranges
73port_ranges:
74 web_services: "2000-9999"
75 ssh_services: "2200-2299"
76 rtmp_services: "1935"
77 rtsp_services: "8554"
78
79
80# Common paths for services
81common_paths:
82 logs: "/var/log"
83 configs: "/etc"
84 data: "/var/lib"
85 cache: "/var/cache"
86 tmp: "/tmp"
87
88# Service interdependencies
89service_dependencies:
90 immich:
91 - postgres
92 - redis
93 ghost:
94 - mysql
95 frigate:
96 - redis # optional, for MQTT
97
98# Default file permissions
99file_permissions:
100 config: "0644"
101 secret: "0600"
102 script: "0755"
103 directory: "0755"
104
105# Log levels
106log_levels:
107 - "debug"
108 - "info"
109 - "warn"
110 - "error"
111 - "fatal"
112
113# Supported authentication methods
114auth_methods:
115 - "local"
116 - "oauth"
117 - "ldap"
118 - "api_key"