diff --git a/.env.sample b/.env.sample
index c0283f3a58108e1aec7ebaea4e89ede015f31e74..7a0816df07c6318807acebc98da8a6057eac6f42 100644
--- a/.env.sample
+++ b/.env.sample
@@ -7,6 +7,7 @@ COMPOSE_FILE=docker-compose.yml:prod.yml:traefik.yml
 NAME=keycloak
 # Set localhost if you are in local
 HOST=keycloak.FQDN
+HOST_HEALTHCHECK=keycloak-health.FQDN
 
 # In Dev environnement
 PORT=8080
diff --git a/prod.yml b/prod.yml
index b7150165ba8c17e349ce96aebf6288dd856a1663..1fe5d6b827cc3bdc499dbf0b687cc4284a3245ae 100644
--- a/prod.yml
+++ b/prod.yml
@@ -12,3 +12,5 @@ services:
         - "--http-enabled=true"
         - "--import-realm"
         - "--verbose"
+        - "--hostname=https://${HOST}"
+        - "--health-enabled=true"
diff --git a/traefik.yml b/traefik.yml
index 0db09508a6d4de45a51460d3f4bbc022dc36ebaf..090e6fdedb5e41a134b0ea6e81479dd0aeaf4c14 100644
--- a/traefik.yml
+++ b/traefik.yml
@@ -5,8 +5,6 @@ services:
     networks:
       - default
       - traefik
-    expose:
-      - 8080
     labels:
       - "traefik.enable=true"
       - "traefik.docker.network=traefik"
@@ -14,7 +12,15 @@ services:
       - "traefik.http.routers.${NAME}.tls.certresolver=myresolver"
       - "traefik.http.routers.${NAME}.entrypoints=web,websecure"
       - "traefik.http.routers.${NAME}.middlewares=hardening@docker"
+      - "traefik.http.routers.${NAME}.service=${NAME}"
+      - "traefik.http.services.${NAME}.loadbalancer.server.port=8080"
 
+      - "traefik.http.routers.${NAME}-healthcheck.rule=Host(`${HOST_HEALTHCHECK}`)"
+      - "traefik.http.routers.${NAME}-healthcheck.tls.certresolver=myresolver"
+      - "traefik.http.routers.${NAME}-healthcheck.entrypoints=web,websecure"
+      - "traefik.http.routers.${NAME}-healthcheck.middlewares=hardening@docker"
+      - "traefik.http.routers.${NAME}-healthcheck.service=${NAME}-healthcheck"
+      - "traefik.http.services.${NAME}-healthcheck.loadbalancer.server.port=9000"
 
 networks:
   traefik: