@@ -5,6 +5,11 @@ x-default-service: &default-service
55 cap_drop : [ALL]
66 security_opt : [no-new-privileges]
77 pull_policy : weekly
8+ logging :
9+ driver : syslog
10+ options :
11+ tag : " {{.Name}}"
12+ syslog-facility : " local0"
813
914services :
1015 vaultwarden :
@@ -69,6 +74,7 @@ services:
6974 - freshrss
7075 - authelia
7176 - wg-easy
77+ - grafana
7278 env_file :
7379 - gatus.env
7480 volumes :
@@ -93,6 +99,7 @@ services:
9399 - freshrss
94100 - authelia
95101 - wg-easy
102+ - grafana
96103 volumes :
97104 - " /mnt/oraclevdb/cloudflared:/user/nonroot/.cloudflared/"
98105 command : tunnel run
@@ -218,6 +225,64 @@ services:
218225 uid : " 999"
219226 gid : " 999"
220227
228+ grafana :
229+ << : *default-service
230+ container_name : grafana
231+ image : grafana/grafana:latest
232+ env_file : ./grafana.env
233+ user : " 472:0" # user grafana, group root
234+ volumes :
235+ - /mnt/oraclevdb/grafana/:/var/lib/grafana/
236+ configs :
237+ - source : grafana-ini
238+ target : /etc/grafana/grafana.ini
239+ uid : " 472"
240+ gid : " 0"
241+ - source : grafana-datasources
242+ target : /etc/grafana/provisioning/datasources/datasources.yaml
243+ uid : " 472"
244+ gid : " 0"
245+ - source : grafana-dashboards
246+ target : /etc/grafana/provisioning/dashboards/dashboards.yaml
247+ uid : " 472"
248+ gid : " 0"
249+ secrets :
250+ - grafana-database-url
251+
252+ loki :
253+ << : *default-service
254+ container_name : loki
255+ image : grafana/loki:latest
256+ user : 10001:10001 # loki user
257+ volumes :
258+ - /mnt/oraclevdb/loki/:/loki/
259+ configs :
260+ - source : loki-config
261+ target : /etc/loki/local-config.yaml
262+ uid : " 10001"
263+ gid : " 10001"
264+
265+ alloy :
266+ << : *default-service
267+ container_name : alloy
268+ image : grafana/alloy:latest
269+ user : 473:473 # alloy user
270+ ports :
271+ - 514:514/tcp
272+ # https://github.com/grafana/alloy/blob/a473efe2b676ba826ec1ba68897b6b1f475bcbbc/Dockerfile#L82
273+ command : >
274+ run
275+ /etc/alloy/config.alloy
276+ --server.http.listen-addr=0.0.0.0:12345
277+ --storage.path=/var/lib/alloy/data
278+ volumes :
279+ - /mnt/oraclevdb/alloy/:/var/lib/alloy/data
280+ configs :
281+ - source : alloy-config
282+ target : /etc/alloy/config.alloy
283+ uid : " 473"
284+ gid : " 473"
285+
221286configs :
222287 rclone-config :
223288 file : ./rclone.conf
@@ -240,6 +305,16 @@ configs:
240305 file : ./authelia.configuration.yml
241306 redis-config :
242307 file : ./redis.conf
308+ grafana-ini :
309+ file : ./grafana.ini
310+ grafana-datasources :
311+ file : ./datasources.yaml
312+ grafana-dashboards :
313+ file : ./dashboards.yaml
314+ loki-config :
315+ file : ./loki-config.yaml
316+ alloy-config :
317+ file : ./config.alloy
243318
244319secrets :
245320 vaultwarden-database-url :
@@ -262,3 +337,5 @@ secrets:
262337 file : " ./authelia-redis-password"
263338 redis-users-acl :
264339 file : " ./redis.users.acl"
340+ grafana-database-url :
341+ file : " ./grafana-database-url"
0 commit comments