Files
docker-services/templates/compose/redisinsight.yml.j2

48 lines
1.6 KiB
Django/Jinja

networks:
{% if docker_services_external_networks %}
traefik:
external: true
{% else %}
traefik:
name: traefik
{% endif %}
volumes:
{% if docker_services_external_volumes %}
redisinsight__db:
external: true
{% else %}
redisinsight__db:
name: redisinsight__db
{% endif %}
services:
redisinsight:
container_name: redisinsight
image: redis/redisinsight:latest
restart: unless-stopped
volumes:
- redisinsight__db:/root/.redisinsight-v2/
cap_add:
- IPC_LOCK
labels:
traefik.enable: "true"
## IP
traefik.http.routers.redisinsight.rule: "Host(`{{ redisinsight_domain }}`){% if redisinsight_whitelist is defined %} && ({% for ip in redisinsight_whitelist %}{% if not loop.last %}ClientIP(`{{ ip }}`) || {% else %}ClientIP(`{{ ip }}`){% endif %}{% endfor %}){% endif %}"
traefik.http.routers.redisinsight.entrypoints: "websecure"
traefik.http.routers.redisinsight.tls.certresolver: "letsencrypt"
traefik.http.services.redisinsight.loadbalancer.server.port: "5000"
{% if traefik_ipwhitelist is defined %}
traefik.http.routers.redisinsight.middlewares: "clientips@docker"
{% endif %}
{% if redisinsight_auth is defined %}
## AUTH
traefik.http.routers.redisinsight-auth.rule: "Host(`{{ redisinsight_domain }}`)"
traefik.http.routers.redisinsight-auth.entrypoints: "websecure"
traefik.http.routers.redisinsight-auth.tls.certresolver: "letsencrypt"
traefik.http.routers.redisinsight-auth.middlewares: "basicauth@file"
com.centurylinklabs.watchtower.enable: {{ redisinsight_watchtower_enable | default('true') }}
{% endif %}
networks:
- traefik