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