56 lines
1.6 KiB
YAML
56 lines
1.6 KiB
YAML
---
|
|
version: "3.8"
|
|
|
|
services:
|
|
app:
|
|
image: grafana/alloy:v1.16.1
|
|
hostname: "${DOMAIN}"
|
|
configs:
|
|
- source: config_alloy
|
|
target: /etc/alloy/config.alloy
|
|
volumes:
|
|
- /:/rootfs:ro
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- /sys:/sys:ro
|
|
- /var/lib/docker:/var/lib/docker:ro
|
|
- alloy-data:/var/lib/alloy/data
|
|
command:
|
|
- "run"
|
|
- "--storage.path=/var/lib/alloy/data"
|
|
- "--server.http.listen-addr=0.0.0.0:12345"
|
|
- "/etc/alloy/config.alloy"
|
|
networks:
|
|
- proxy
|
|
- internal
|
|
secrets:
|
|
- basic_auth
|
|
deploy:
|
|
restart_policy:
|
|
condition: on-failure
|
|
labels:
|
|
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
|
|
- "coop-cloud.${STACK_NAME}.version=1.6.0+v1.8.1"
|
|
- "traefik.enable=true"
|
|
- "traefik.swarm.network=proxy"
|
|
- "traefik.http.services.${STACK_NAME}-alloy.loadbalancer.server.port=12345"
|
|
- "traefik.http.routers.${STACK_NAME}-alloy.rule=Host(`alloy.${DOMAIN}`)"
|
|
- "traefik.http.routers.${STACK_NAME}-alloy.entrypoints=web-secure"
|
|
- "traefik.http.routers.${STACK_NAME}-alloy.tls=true"
|
|
- "traefik.http.routers.${STACK_NAME}-alloy.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
|
- "traefik.http.routers.${STACK_NAME}-alloy.middlewares=basicauth@file"
|
|
configs:
|
|
config_alloy:
|
|
template_driver: golang
|
|
name: ${STACK_NAME}_config_alloy_${CONFIG_ALLOY_VERSION}
|
|
file: config.alloy.tmpl
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
internal:
|
|
volumes:
|
|
alloy-data:
|
|
secrets:
|
|
basic_auth:
|
|
external: true
|
|
name: ${STACK_NAME}_basic_auth_${SECRET_BASIC_AUTH_VERSION}
|