#31 Add Loki logging for all "main" apps

Also converted a few old composes from 4-space indentation to 2-space
Ignores supporting containers like postgres, redis, etc.
This commit is contained in:
Joey Hafner 2022-07-13 13:35:56 -07:00
parent 8479d07104
commit 54124da9d1
29 changed files with 600 additions and 258 deletions

View File

@ -38,6 +38,13 @@ services:
server: server:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2022.7.1} image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2022.7.1}
container_name: authentik_authentik container_name: authentik_authentik
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
authentik: authentik:
web: web:
@ -67,6 +74,13 @@ services:
worker: worker:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2022.1.3} image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2022.1.3}
container_name: authentik_worker container_name: authentik_worker
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
networks: networks:
- authentik - authentik

View File

@ -3,6 +3,13 @@ services:
radarr: radarr:
image: linuxserver/radarr image: linuxserver/radarr
container_name: autopirate_radarr container_name: autopirate_radarr
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
environment: environment:
@ -22,6 +29,13 @@ services:
sonarr: sonarr:
image: linuxserver/sonarr image: linuxserver/sonarr
container_name: autopirate_sonarr container_name: autopirate_sonarr
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
environment: environment:
@ -41,6 +55,13 @@ services:
lidarr: lidarr:
image: linuxserver/lidarr image: linuxserver/lidarr
container_name: autopirate_lidarr container_name: autopirate_lidarr
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
environment: environment:
@ -60,6 +81,13 @@ services:
nzbhydra2: nzbhydra2:
image: linuxserver/nzbhydra2 image: linuxserver/nzbhydra2
container_name: autopirate_nzbhydra2 container_name: autopirate_nzbhydra2
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
environment: environment:
@ -78,6 +106,13 @@ services:
sabnzbd: sabnzbd:
image: linuxserver/sabnzbd image: linuxserver/sabnzbd
container_name: autopirate_sabnzbd container_name: autopirate_sabnzbd
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
- monitoring - monitoring
@ -100,6 +135,13 @@ services:
tdarr: tdarr:
image: haveagitgat/tdarr:latest image: haveagitgat/tdarr:latest
container_name: autopirate_tdarr container_name: autopirate_tdarr
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
web: web:
tdarr: tdarr:
@ -132,6 +174,13 @@ services:
tdarr-node: tdarr-node:
image: haveagitgat/tdarr_node:latest image: haveagitgat/tdarr_node:latest
container_name: autopirate_tdarr-node container_name: autopirate_tdarr-node
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
deploy: deploy:
resources: resources:
reservations: reservations:
@ -166,6 +215,13 @@ services:
jackett: jackett:
image: linuxserver/jackett image: linuxserver/jackett
container_name: autopirate_jackett container_name: autopirate_jackett
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
environment: environment:

View File

@ -3,6 +3,13 @@ services:
calibre-web-rpg: calibre-web-rpg:
image: linuxserver/calibre-web image: linuxserver/calibre-web
container_name: calibre-web_rpg container_name: calibre-web_rpg
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
@ -20,6 +27,13 @@ services:
calibre-web-sff: calibre-web-sff:
image: linuxserver/calibre-web image: linuxserver/calibre-web
container_name: calibre-web_sff container_name: calibre-web_sff
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
@ -37,6 +51,13 @@ services:
calibre-web-ace: calibre-web-ace:
image: linuxserver/calibre-web image: linuxserver/calibre-web
container_name: calibre-web_ace container_name: calibre-web_ace
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
@ -54,6 +75,13 @@ services:
calibre-web-dev: calibre-web-dev:
image: registry.gitlab.jafner.net/jafner/calibre-web/calibre-web:master-latest image: registry.gitlab.jafner.net/jafner/calibre-web/calibre-web:master-latest
container_name: calibre-web_dev container_name: calibre-web_dev
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000

View File

@ -3,6 +3,13 @@ services:
cloudflare-ddns: cloudflare-ddns:
image: oznu/cloudflare-ddns image: oznu/cloudflare-ddns
container_name: ddns_cloudflare-ddns container_name: ddns_cloudflare-ddns
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- API_KEY=6wjPH5DND2dFjWIuNTq_TVL-VJS9czp5Wlq3_4ju - API_KEY=6wjPH5DND2dFjWIuNTq_TVL-VJS9czp5Wlq3_4ju

View File

@ -3,6 +3,13 @@ services:
gitlab: gitlab:
image: 'gitlab/gitlab-ee:latest' image: 'gitlab/gitlab-ee:latest'
container_name: gitlab_gitlab container_name: gitlab_gitlab
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
hostname: 'gitlab.jafner.net' hostname: 'gitlab.jafner.net'
networks: networks:
@ -85,6 +92,13 @@ services:
gitlab-runner-0: gitlab-runner-0:
image: 'gitlab/gitlab-runner:latest' image: 'gitlab/gitlab-runner:latest'
container_name: gitlab_runner_0 container_name: gitlab_runner_0
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- GODEBUG="x509ignoreCN=0" - GODEBUG="x509ignoreCN=0"
@ -97,6 +111,13 @@ services:
gitlab-runner-1: gitlab-runner-1:
image: 'gitlab/gitlab-runner:latest' image: 'gitlab/gitlab-runner:latest'
container_name: gitlab_runner_1 container_name: gitlab_runner_1
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- GODEBUG="x509ignoreCN=0" - GODEBUG="x509ignoreCN=0"

View File

@ -1,21 +1,28 @@
version: '3' version: '3'
services: services:
homer: homer:
image: b4bz/homer image: b4bz/homer
container_name: homepage_homer container_name: homepage_homer
restart: "unless-stopped" logging:
environment: driver: loki
- UID=1000 options:
- GID=1000 loki-url: http://localhost:3100/loki/api/v1/push
volumes: loki-batch-size: "50"
- ./assets:/www/assets loki-retries: "1"
networks: loki-timeout: "2s"
- web restart: "unless-stopped"
labels: environment:
- traefik.http.routers.homer.rule=Host(`home.jafner.net`) - UID=1000
- traefik.http.routers.homer.tls.certresolver=lets-encrypt - GID=1000
- traefik.http.routers.homer.middlewares=authentik@file volumes:
- ./assets:/www/assets
networks:
- web
labels:
- traefik.http.routers.homer.rule=Host(`home.jafner.net`)
- traefik.http.routers.homer.tls.certresolver=lets-encrypt
- traefik.http.routers.homer.middlewares=authentik@file
networks: networks:
web: web:
external: true external: true

View File

@ -3,6 +3,13 @@ services:
jdl: jdl:
image: jlesage/jdownloader-2 image: jlesage/jdownloader-2
container_name: jdownloader2 container_name: jdownloader2
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
volumes: volumes:

View File

@ -1,46 +1,53 @@
version: '3.1' version: '3.1'
services: services:
landing: landing:
image: wordpress image: wordpress
container_name: wordpress_landing container_name: wordpress_landing
restart: "no" logging:
environment: driver: loki
WORDPRESS_DB_HOST: landing_db options:
WORDPRESS_DB_USER: wordpress loki-url: http://localhost:3100/loki/api/v1/push
WORDPRESS_DB_PASSWORD: wordpress loki-batch-size: "50"
WORDPRESS_DB_NAME: wordpressdb loki-retries: "1"
volumes: loki-timeout: "2s"
- ${DOCKER_DATA}/html:/var/www/html restart: "no"
- ./docker-php-memlimit.ini:/usr/local/etc/php/conf.d/docker-php-memlimit.ini:ro environment:
labels: WORDPRESS_DB_HOST: landing_db
- traefik.http.routers.landing.rule=Host(`www.jafner.net`) WORDPRESS_DB_USER: wordpress
- traefik.http.routers.landing.tls=true WORDPRESS_DB_PASSWORD: wordpress
- traefik.http.routers.landing.tls.certresolver=lets-encrypt WORDPRESS_DB_NAME: wordpressdb
- traefik.port=80 volumes:
networks: - ${DOCKER_DATA}/html:/var/www/html
- web - ./docker-php-memlimit.ini:/usr/local/etc/php/conf.d/docker-php-memlimit.ini:ro
- landing labels:
depends_on: - traefik.http.routers.landing.rule=Host(`www.jafner.net`)
- landing_db - traefik.http.routers.landing.tls=true
- traefik.http.routers.landing.tls.certresolver=lets-encrypt
- traefik.port=80
networks:
- web
- landing
depends_on:
- landing_db
landing_db: landing_db:
image: mysql:5.7 image: mysql:5.7
container_name: wordpress_landing-db container_name: wordpress_landing-db
restart: "no" restart: "no"
networks: networks:
- landing - landing
environment: environment:
MYSQL_DATABASE: wordpressdb MYSQL_DATABASE: wordpressdb
MYSQL_USER: wordpress MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress MYSQL_PASSWORD: wordpress
MYSQL_RANDOM_ROOT_PASSWORD: '1' MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes: volumes:
- ${DOCKER_DATA}/db:/var/lib/mysql - ${DOCKER_DATA}/db:/var/lib/mysql
labels: labels:
- traefik.enable=false - traefik.enable=false
networks: networks:
web: web:
external: true external: true
landing: landing:

View File

@ -1,8 +1,15 @@
version: "3" version: "3"
services: services:
librespeed: librespeed:
container_name: librespeed
image: adolfintel/speedtest image: adolfintel/speedtest
container_name: librespeed
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- TITLE=LibreSpeed@Jafner.net - TITLE=LibreSpeed@Jafner.net

View File

@ -4,6 +4,13 @@ services:
bmcp: bmcp:
image: itzg/minecraft-server:java8 image: itzg/minecraft-server:java8
container_name: minecraft_bmcp container_name: minecraft_bmcp
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- EULA=TRUE - EULA=TRUE
- MAX_MEMORY=12G - MAX_MEMORY=12G

View File

@ -4,6 +4,13 @@ services:
e6: e6:
image: itzg/minecraft-server:java8 image: itzg/minecraft-server:java8
container_name: minecraft_e6 container_name: minecraft_e6
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- EULA=TRUE - EULA=TRUE
- MAX_MEMORY=8G - MAX_MEMORY=8G

View File

@ -4,6 +4,13 @@ services:
fan: fan:
image: itzg/minecraft-server:java8 image: itzg/minecraft-server:java8
container_name: minecraft_fan container_name: minecraft_fan
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- EULA=TRUE - EULA=TRUE
- MAX_MEMORY=6G - MAX_MEMORY=6G

View File

@ -3,6 +3,13 @@ services:
router: router:
image: itzg/mc-router image: itzg/mc-router
container_name: minecraft_mc-router container_name: minecraft_mc-router
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
networks: networks:
- mc-router - mc-router

View File

@ -3,6 +3,13 @@ services:
vanilla: vanilla:
image: itzg/minecraft-server:latest image: itzg/minecraft-server:latest
container_name: minecraft_vanilla container_name: minecraft_vanilla
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
environment: environment:
- EULA=TRUE - EULA=TRUE
- VERSION=1.19 - VERSION=1.19

View File

@ -63,10 +63,10 @@ services:
logging: logging:
driver: loki driver: loki
options: options:
loki-url: "http://localhost:3100/loki/api/v1/push" loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50" loki-batch-size: "50"
loki-retries: 1 loki-retries: "1"
loki-timeout: 2s loki-timeout: "2s"
``` ```
NOTE: The batch size here is in lines for *only the selected container*. NOTE: The batch size here is in lines for *only the selected container*.

View File

@ -1,113 +1,162 @@
version: '3' version: '3'
services: services:
grafana: grafana:
image: grafana/grafana-oss:latest image: grafana/grafana-oss:latest
container_name: monitoring_grafana container_name: monitoring_grafana
restart: "no" logging:
networks: driver: loki
- monitoring options:
- web loki-url: http://localhost:3100/loki/api/v1/push
user: "0" loki-batch-size: "50"
volumes: loki-retries: "1"
- ${DOCKER_DATA}/grafana:/var/lib/grafana loki-timeout: "2s"
- ./custom.ini:/etc/grafana/grafana.ini restart: "no"
labels: networks:
- traefik.http.routers.grafana.rule=Host(`grafana.jafner.net`) - monitoring
- traefik.http.routers.grafana.tls.certresolver=lets-encrypt - web
#- traefik.http.routers.grafana.middlewares=authelia@file user: "0"
volumes:
- ${DOCKER_DATA}/grafana:/var/lib/grafana
- ./custom.ini:/etc/grafana/grafana.ini
labels:
- traefik.http.routers.grafana.rule=Host(`grafana.jafner.net`)
- traefik.http.routers.grafana.tls.certresolver=lets-encrypt
#- traefik.http.routers.grafana.middlewares=authelia@file
prometheus: prometheus:
image: prom/prometheus:latest image: prom/prometheus:latest
container_name: monitoring_prometheus container_name: monitoring_prometheus
user: "1000:1000" logging:
networks: driver: loki
- monitoring options:
- web loki-url: http://localhost:3100/loki/api/v1/push
ports: loki-batch-size: "50"
- 9090:9090 loki-retries: "1"
volumes: loki-timeout: "2s"
- ./prometheus.yml:/etc/prometheus/prometheus.yml user: "1000:1000"
- ${DOCKER_DATA}/prometheus:/prometheus networks:
restart: "no" - monitoring
command: - web
- "--config.file=/etc/prometheus/prometheus.yml" ports:
labels: - 9090:9090
- traefik.http.routers.prometheus-monitoring.rule=Host(`prometheus.jafner.net`) volumes:
- traefik.http.routers.prometheus-monitoring.tls.certresolver=lets-encrypt - ./prometheus.yml:/etc/prometheus/prometheus.yml
- traefik.http.routers.prometheus-monitoring.middlewares=authentik@file - ${DOCKER_DATA}/prometheus:/prometheus
restart: "no"
loki: command:
image: grafana/loki:2.5.0 - "--config.file=/etc/prometheus/prometheus.yml"
container_name: monitoring_loki labels:
networks: - traefik.http.routers.prometheus-monitoring.rule=Host(`prometheus.jafner.net`)
- monitoring - traefik.http.routers.prometheus-monitoring.tls.certresolver=lets-encrypt
- web - traefik.http.routers.prometheus-monitoring.middlewares=authentik@file
ports:
- "3100:3100" loki:
volumes: image: grafana/loki:2.5.0
- ${DOCKER_DATA}/loki:/etc/loki container_name: monitoring_loki
- ./loki-config.yml:/etc/loki/loki-config.yml # not sure if this works. If not, just edit the config within the data volume logging:
restart: "no" driver: loki
command: -config.file=/etc/loki/loki-config.yml options:
labels: loki-url: http://localhost:3100/loki/api/v1/push
- traefik.http.routers.loki.rule=Host(`loki.jafner.net`) loki-batch-size: "50"
- traefik.http.routers.loki.tls.certresolver=lets-encrypt loki-retries: "1"
loki-timeout: "2s"
networks:
- monitoring
- web
ports:
- "3100:3100"
volumes:
- ${DOCKER_DATA}/loki:/etc/loki
- ./loki-config.yml:/etc/loki/loki-config.yml # not sure if this works. If not, just edit the config within the data volume
restart: "no"
command: -config.file=/etc/loki/loki-config.yml
labels:
- traefik.http.routers.loki.rule=Host(`loki.jafner.net`)
- traefik.http.routers.loki.tls.certresolver=lets-encrypt
pihole-jafner-net: pihole-jafner-net:
image: ekofr/pihole-exporter:latest image: ekofr/pihole-exporter:latest
container_name: monitoring_prometheus-pihole-jafner-net container_name: monitoring_prometheus-pihole-jafner-net
restart: "no" logging:
networks: driver: loki
- monitoring options:
environment: loki-url: http://localhost:3100/loki/api/v1/push
- PIHOLE_HOSTNAME=pihole.jafner.net loki-batch-size: "50"
- PIHOLE_PASSWORD=wjrXfjjEsPRCoBkVLKG3FmTaX8DZvBWh5z7ba6GBukAzYjms3k loki-retries: "1"
- INTERVAL=15s loki-timeout: "2s"
- PORT=9617 restart: "no"
labels: networks:
- traefik.enable=false - monitoring
environment:
- PIHOLE_HOSTNAME=pihole.jafner.net
- PIHOLE_PASSWORD=wjrXfjjEsPRCoBkVLKG3FmTaX8DZvBWh5z7ba6GBukAzYjms3k
- INTERVAL=15s
- PORT=9617
labels:
- traefik.enable=false
mc-monitor: mc-monitor:
image: itzg/mc-monitor # https://github.com/itzg/mc-monitor image: itzg/mc-monitor # https://github.com/itzg/mc-monitor
container_name: monitoring_mc-monitor container_name: monitoring_mc-monitor
command: export-for-prometheus logging:
restart: "no" driver: loki
networks: options:
- monitoring loki-url: http://localhost:3100/loki/api/v1/push
- mc-router loki-batch-size: "50"
environment: loki-retries: "1"
EXPORT_SERVERS: e6-056,vanilla,bmcp,e6,e6-dev,fan loki-timeout: "2s"
labels: command: export-for-prometheus
- traefik.enable=false restart: "no"
networks:
- monitoring
- mc-router
environment:
EXPORT_SERVERS: e6-056,vanilla,bmcp,e6,e6-dev,fan
labels:
- traefik.enable=false
plex-exporter: plex-exporter:
image: granra/plex_exporter image: granra/plex_exporter
container_name: monitoring_plex-exporter container_name: monitoring_plex-exporter
restart: "no" logging:
networks: driver: loki
- monitoring options:
command: loki-url: http://localhost:3100/loki/api/v1/push
- "--plex-server=https://plex.jafner.net" loki-batch-size: "50"
- "--token=5PLsbzsQTXomf88sKyGr" loki-retries: "1"
- "--auto-discover" loki-timeout: "2s"
labels: restart: "no"
- traefik.enable=false networks:
- monitoring
command:
- "--plex-server=https://plex.jafner.net"
- "--token=5PLsbzsQTXomf88sKyGr"
- "--auto-discover"
labels:
- traefik.enable=false
sabnzbd_exporter: sabnzbd_exporter:
image: msroest/sabnzbd_exporter # https://github.com/msroest/sabnzbd_exporter image: msroest/sabnzbd_exporter # https://github.com/msroest/sabnzbd_exporter
container_name: monitoring_sabnzbd_exporter container_name: monitoring_sabnzbd_exporter
restart: "no" logging:
networks: driver: loki
- monitoring options:
environment: loki-url: http://localhost:3100/loki/api/v1/push
- SABNZBD_BASEURLS=https://sabnzbd.jafner.net:443 loki-batch-size: "50"
- SABNZBD_APIKEYS=b7af57a920014eb08aa3881fc0384c4f loki-retries: "1"
loki-timeout: "2s"
restart: "no"
networks:
- monitoring
environment:
- SABNZBD_BASEURLS=https://sabnzbd.jafner.net:443
- SABNZBD_APIKEYS=b7af57a920014eb08aa3881fc0384c4f
networks: networks:
monitoring: monitoring:
external: true external: true
web: web:
external: true external: true
mc-router: mc-router:
external: true external: true

View File

@ -3,6 +3,13 @@ services:
navidrome: navidrome:
image: deluan/navidrome:latest image: deluan/navidrome:latest
container_name: navidrome_navidrome container_name: navidrome_navidrome
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
user: 1000:1000 user: 1000:1000
networks: networks:
- web - web

View File

@ -1,45 +1,52 @@
version: '3.1' version: '3.1'
services: services:
nvgm: nvgm:
image: wordpress image: wordpress
container_name: wordpress_nvgm container_name: wordpress_nvgm
restart: "no" logging:
environment: driver: loki
WORDPRESS_DB_HOST: nvgm_db options:
WORDPRESS_DB_USER: wordpress loki-url: http://localhost:3100/loki/api/v1/push
WORDPRESS_DB_PASSWORD: wordpress loki-batch-size: "50"
WORDPRESS_DB_NAME: wordpressdb loki-retries: "1"
volumes: loki-timeout: "2s"
- ${DOCKER_DATA}/html:/var/www/html restart: "no"
labels: environment:
- traefik.http.routers.nvgm.rule=Host(`nvgm.jafner.net`) WORDPRESS_DB_HOST: nvgm_db
- traefik.http.routers.nvgm.tls=true WORDPRESS_DB_USER: wordpress
- traefik.http.routers.nvgm.tls.certresolver=lets-encrypt WORDPRESS_DB_PASSWORD: wordpress
- traefik.port=80 WORDPRESS_DB_NAME: wordpressdb
networks: volumes:
- web - ${DOCKER_DATA}/html:/var/www/html
- nvgm labels:
depends_on: - traefik.http.routers.nvgm.rule=Host(`nvgm.jafner.net`)
- nvgm_db - traefik.http.routers.nvgm.tls=true
- traefik.http.routers.nvgm.tls.certresolver=lets-encrypt
- traefik.port=80
networks:
- web
- nvgm
depends_on:
- nvgm_db
nvgm_db: nvgm_db:
image: mysql:5.7 image: mysql:5.7
container_name: wordpress_nvgm-db container_name: wordpress_nvgm-db
restart: "no" restart: "no"
networks: networks:
- nvgm - nvgm
environment: environment:
MYSQL_DATABASE: wordpressdb MYSQL_DATABASE: wordpressdb
MYSQL_USER: wordpress MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress MYSQL_PASSWORD: wordpress
MYSQL_RANDOM_ROOT_PASSWORD: '1' MYSQL_RANDOM_ROOT_PASSWORD: '1'
labels: labels:
- traefik.enable=false - traefik.enable=false
volumes: volumes:
- ${DOCKER_DATA}/db:/var/lib/mysql - ${DOCKER_DATA}/db:/var/lib/mysql
networks: networks:
web: web:
external: true external: true
nvgm: nvgm:

View File

@ -4,6 +4,13 @@ services:
peertube: peertube:
image: chocobozzz/peertube:production-buster image: chocobozzz/peertube:production-buster
container_name: peertube_peertube container_name: peertube_peertube
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
web: web:
peertube: peertube:

View File

@ -3,6 +3,13 @@ services:
plex: plex:
image: linuxserver/plex image: linuxserver/plex
container_name: plex_plex container_name: plex_plex
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
deploy: deploy:
resources: resources:
@ -11,7 +18,6 @@ services:
- driver: nvidia - driver: nvidia
count: all count: all
capabilities: [gpu] capabilities: [gpu]
networks: networks:
- web - web
ports: ports:
@ -46,6 +52,13 @@ services:
ombi: ombi:
image: ghcr.io/linuxserver/ombi image: ghcr.io/linuxserver/ombi
container_name: plex_ombi container_name: plex_ombi
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
networks: networks:
- web - web
@ -65,6 +78,13 @@ services:
tautulli: tautulli:
image: lscr.io/linuxserver/tautulli image: lscr.io/linuxserver/tautulli
container_name: plex_tautulli container_name: plex_tautulli
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -3,6 +3,13 @@ services:
portainer: portainer:
image: portainer/portainer-ce image: portainer/portainer-ce
container_name: portainer_portainer container_name: portainer_portainer
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
command: -H unix:///var/run/docker.sock command: -H unix:///var/run/docker.sock
networks: networks:

View File

@ -1,45 +1,52 @@
version: '3.1' version: '3.1'
services: services:
portfolio: portfolio:
image: wordpress image: wordpress
container_name: wordpress_portfolio container_name: wordpress_portfolio
restart: "no" logging:
environment: driver: loki
WORDPRESS_DB_HOST: portfolio_db options:
WORDPRESS_DB_USER: wordpress loki-url: http://localhost:3100/loki/api/v1/push
WORDPRESS_DB_PASSWORD: wordpress loki-batch-size: "50"
WORDPRESS_DB_NAME: wordpressdb loki-retries: "1"
volumes: loki-timeout: "2s"
- ${DOCKER_DATA}/html:/var/www/html restart: "no"
labels: environment:
- traefik.http.routers.portfolio.rule=Host(`portfolio.jafner.net`) WORDPRESS_DB_HOST: portfolio_db
- traefik.http.routers.portfolio.tls=true WORDPRESS_DB_USER: wordpress
- traefik.http.routers.portfolio.tls.certresolver=lets-encrypt WORDPRESS_DB_PASSWORD: wordpress
- traefik.port=80 WORDPRESS_DB_NAME: wordpressdb
networks: volumes:
- web - ${DOCKER_DATA}/html:/var/www/html
- portfolio labels:
depends_on: - traefik.http.routers.portfolio.rule=Host(`portfolio.jafner.net`)
- portfolio_db - traefik.http.routers.portfolio.tls=true
- traefik.http.routers.portfolio.tls.certresolver=lets-encrypt
- traefik.port=80
networks:
- web
- portfolio
depends_on:
- portfolio_db
portfolio_db: portfolio_db:
image: mysql:5.7 image: mysql:5.7
container_name: wordpress_portfolio-db container_name: wordpress_portfolio-db
restart: "no" restart: "no"
networks: networks:
- portfolio - portfolio
environment: environment:
MYSQL_DATABASE: wordpressdb MYSQL_DATABASE: wordpressdb
MYSQL_USER: wordpress MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress MYSQL_PASSWORD: wordpress
MYSQL_RANDOM_ROOT_PASSWORD: '1' MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes: volumes:
- ${DOCKER_DATA}/db:/var/lib/mysql - ${DOCKER_DATA}/db:/var/lib/mysql
labels: labels:
- traefik.enable=false - traefik.enable=false
networks: networks:
web: web:
external: true external: true
portfolio: portfolio:

View File

@ -2,7 +2,14 @@ version: "3"
services: services:
qbittorrent: qbittorrent:
image: linuxserver/qbittorrent image: linuxserver/qbittorrent
container_name: qbittorrent container_name: qbittorrent_qbittorrent
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
networks: networks:
- web - web
restart: "no" restart: "no"

View File

@ -3,6 +3,13 @@ services:
send: send:
image: registry.gitlab.com/timvisee/send:latest image: registry.gitlab.com/timvisee/send:latest
container_name: send_send container_name: send_send
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
networks: networks:
- send - send

View File

@ -3,6 +3,13 @@ services:
sftp: sftp:
image: atmoz/sftp image: atmoz/sftp
container_name: sftp_sftp container_name: sftp_sftp
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
ports: ports:
- 23450:22/tcp - 23450:22/tcp

View File

@ -3,6 +3,13 @@ services:
stash: stash:
container_name: stash container_name: stash
image: stashapp/stash:latest image: stashapp/stash:latest
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
volumes: volumes:
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro

View File

@ -4,6 +4,13 @@ services:
traefik: traefik:
image: traefik:latest image: traefik:latest
container_name: traefik_traefik container_name: traefik_traefik
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
networks: networks:
- web - web

View File

@ -3,6 +3,13 @@ services:
unifi-controller: unifi-controller:
image: lscr.io/linuxserver/unifi-controller image: lscr.io/linuxserver/unifi-controller
container_name: unifi_controller container_name: unifi_controller
logging:
driver: loki
options:
loki-url: http://localhost:3100/loki/api/v1/push
loki-batch-size: "50"
loki-retries: "1"
loki-timeout: "2s"
restart: "no" restart: "no"
environment: environment:
- PUID=1000 - PUID=1000

View File

@ -4,19 +4,26 @@
version: '3.3' version: '3.3'
services: services:
uptime-kuma: uptime-kuma:
image: louislam/uptime-kuma image: louislam/uptime-kuma
container_name: monitoring_uptime-kuma container_name: monitoring_uptime-kuma
restart: "no" logging:
volumes: driver: loki
- ${DOCKER_DATA}/data:/app/data options:
networks: loki-url: http://localhost:3100/loki/api/v1/push
- web loki-batch-size: "50"
labels: loki-retries: "1"
- traefik.http.routers.uptime-kuma.rule=Host(`uptime.jafner.net`) loki-timeout: "2s"
- traefik.http.routers.uptime-kuma.tls.certresolver=lets-encrypt restart: "no"
- traefik.http.routers.uptime-kuma.middlewares=authentik@file volumes:
- ${DOCKER_DATA}/data:/app/data
networks:
- web
labels:
- traefik.http.routers.uptime-kuma.rule=Host(`uptime.jafner.net`)
- traefik.http.routers.uptime-kuma.tls.certresolver=lets-encrypt
- traefik.http.routers.uptime-kuma.middlewares=authentik@file
networks: networks:
web: web:
external: true external: true