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