compose.yaml.j2 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. ---
  2. services:
  3. {{ service_name }}:
  4. image: docker.io/library/influxdb:2.8.0-alpine
  5. restart: {{ restart_policy }}
  6. environment:
  7. - TZ={{ container_timezone }}
  8. - DOCKER_INFLUXDB_INIT_MODE=setup
  9. - DOCKER_INFLUXDB_INIT_USERNAME={{ influxdb_init_username }}
  10. - DOCKER_INFLUXDB_INIT_PASSWORD=${INFLUXDB_INIT_PASSWORD}
  11. {% if traefik_enabled %}
  12. networks:
  13. {{ traefik_network }}:
  14. {% endif %}
  15. {% if not traefik_enabled %}
  16. ports:
  17. - "{{ ports_http }}:8086"
  18. {% endif %}
  19. volumes:
  20. - {{ service_name }}_data:/var/lib/influxdb2
  21. {% if traefik_enabled %}
  22. labels:
  23. - traefik.enable=true
  24. - traefik.docker.network={{ traefik_network }}
  25. - traefik.http.services.{{ service_name }}-web.loadbalancer.server.port=8086
  26. - traefik.http.services.{{ service_name }}-web.loadbalancer.server.scheme=http
  27. - traefik.http.routers.{{ service_name }}-web-http.rule=Host(`{{ traefik_host }}.{{ traefik_domain }}`)
  28. - traefik.http.routers.{{ service_name }}-web-http.entrypoints=web
  29. - traefik.http.routers.{{ service_name }}-web-http.service={{ service_name }}-web
  30. {% if traefik_tls_enabled %}
  31. - traefik.http.routers.{{ service_name }}-web-https.rule=Host(`{{ traefik_host }}.{{ traefik_domain }}`)
  32. - traefik.http.routers.{{ service_name }}-web-https.entrypoints=websecure
  33. - traefik.http.routers.{{ service_name }}-web-https.tls=true
  34. - traefik.http.routers.{{ service_name }}-web-https.tls.certresolver={{ traefik_tls_certresolver }}
  35. - traefik.http.routers.{{ service_name }}-web-https.service={{ service_name }}-web
  36. {% endif %}
  37. {% endif %}
  38. volumes:
  39. {{ service_name }}_data:
  40. driver: local
  41. {% if traefik_enabled %}
  42. networks:
  43. {{ traefik_network }}:
  44. external: true
  45. {% endif %}