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