/
/
/
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 # D&D session agent services
7 # Speaches is the maintained successor to fedirz/faster-whisper-server,
8 # which is frozen at 0.6.0-rc.4.
9 dnd_stt: "ghcr.io/speaches-ai/speaches:0.8.3-cuda"
10
11 # LLM Stack services
12 ollama: "ollama/ollama:latest"
13 openwebui: "ghcr.io/open-webui/open-webui:main"
14 litellm: "ghcr.io/berriai/litellm:main-latest"
15
16 # Hardware-dependent services (conditional logic in templates)
17 frigate: "ghcr.io/blakeblackshear/frigate:stable"
18 frigate_tensorrt: "ghcr.io/blakeblackshear/frigate:stable-tensorrt"
19 immich_server: "ghcr.io/immich-app/immich-server"
20 immich_machine_learning: "ghcr.io/immich-app/immich-machine-learning"
21 immich_postgres: "ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0"
22 valkey: "docker.io/valkey/valkey:8-bookworm"
23
24 # Core services
25 forgejo: "codeberg.org/forgejo/forgejo:12"
26 forgejo_runner: "data.forgejo.org/forgejo/runner:9.1.1"
27
28 # Productivity services
29 stirling_pdf: "frooodle/s-pdf:latest"
30 convertx: "ghcr.io/c4illin/convertx:latest"
31 cyberchef: "ghcr.io/gchq/cyberchef:latest"
32 it_tools: "corentinth/it-tools:latest"
33 tandoor: "vabene1111/recipes:latest"
34 ghost: "ghost:5-alpine"
35
36 # Conferencing services
37 livekit: "livekit/livekit-server:v1.13.5"
38
39 # Database services
40 postgres: "postgres:15-alpine"
41 mysql: "mysql:8.0"
42 redis: "redis:7-alpine"
43
44# Default resource limits per service type
45resource_profiles:
46 lightweight:
47 memory_limit: "512m"
48 cpu_limit: "0.5"
49 standard:
50 memory_limit: "1g"
51 cpu_limit: "1"
52 heavy:
53 memory_limit: "2g"
54 cpu_limit: "2"
55 intensive:
56 memory_limit: "4g"
57 cpu_limit: "4"
58
59# Service classifications
60service_profiles:
61 frigate: "intensive"
62 immich_server: "heavy"
63 immich_ml: "intensive"
64 postgres: "standard"
65 mysql: "standard"
66 redis: "lightweight"
67 forgejo: "standard"
68 web_tools: "standard"
69 caddy: "lightweight"
70 tandoor: "standard"
71 ghost: "standard"
72
73# Hardware acceleration options
74hardware_acceleration_options:
75 - "none"
76 - "vaapi"
77 - "nvdec"
78 - "nvenc"
79 - "qsv"
80 - "cuda"
81
82# Database types supported
83supported_databases:
84 - "sqlite3"
85 - "postgresql"
86 - "mysql"
87
88# Network port ranges
89port_ranges:
90 web_services: "2000-9999"
91 ssh_services: "2200-2299"
92 rtmp_services: "1935"
93 rtsp_services: "8554"
94
95
96# Common paths for services
97common_paths:
98 logs: "/var/log"
99 configs: "/etc"
100 data: "/var/lib"
101 cache: "/var/cache"
102 tmp: "/tmp"
103
104# Service interdependencies
105service_dependencies:
106 immich:
107 - postgres
108 - redis
109 ghost:
110 - mysql
111 frigate:
112 - redis # optional, for MQTT
113
114# Default file permissions
115file_permissions:
116 config: "0644"
117 secret: "0600"
118 script: "0755"
119 directory: "0755"
120
121# Log levels
122log_levels:
123 - "debug"
124 - "info"
125 - "warn"
126 - "error"
127 - "fatal"
128
129# Supported authentication methods
130auth_methods:
131 - "local"
132 - "oauth"
133 - "ldap"
134 - "api_key"