diff options
Diffstat (limited to 'nomad')
-rw-r--r-- | nomad/garage.hcl | 2 | ||||
-rw-r--r-- | nomad/traefik.hcl | 46 |
2 files changed, 36 insertions, 12 deletions
diff --git a/nomad/garage.hcl b/nomad/garage.hcl index 3478706..293e58b 100644 --- a/nomad/garage.hcl +++ b/nomad/garage.hcl @@ -59,7 +59,7 @@ job "garage" { "garage_api", "traefik.enable=true", "traefik.frontend.entryPoints=https,http", - "traefik.frontend.rule=Host:garage.deuxfleurs.fr" + "traefik.frontend.rule=Host:garage.deuxfleurs.fr,garage.devx.adnab.me" ] port = "api_port" address_mode = "host" diff --git a/nomad/traefik.hcl b/nomad/traefik.hcl index 9dcb5b5..657e8c7 100644 --- a/nomad/traefik.hcl +++ b/nomad/traefik.hcl @@ -9,6 +9,7 @@ job "frontend" { config { image = "amd64/traefik:1.7.20" readonly_rootfs = true + network_mode = "host" port_map { https_port = 443 http_port = 80 @@ -24,30 +25,58 @@ job "frontend" { network { port "https_port" { static = "443" + host_network = "public" } port "http_port" { static = "80" + host_network = "public" } port "adm_port" { static = "8082" } } } + + template { + data = "{{ key \"configuration/traefik/traefik.toml\" }}" + destination = "secrets/traefik.toml" + } + + service { + tags = [ + "http", + "frontend", + "(diplonat (tcp_port 80))" + ] + port = "http_port" + name = "traefik-http" + + check { + type = "tcp" + port = "http_port" + interval = "60s" + timeout = "5s" + check_restart { + limit = 3 + grace = "90s" + ignore_warnings = false + } + } + } service { tags = [ "https", "frontend", - "(diplonat (tcp_port 80 443))" + "(diplonat (tcp_port 443))" ] port = "https_port" address_mode = "host" - name = "traefik" + name = "traefik-https" + check { - type = "http" - protocol = "http" - port = "adm_port" - path = "/ping" + type = "tcp" + port = "https_port" interval = "60s" timeout = "5s" check_restart { @@ -57,11 +86,6 @@ job "frontend" { } } } - - template { - data = "{{ key \"configuration/traefik/traefik.toml\" }}" - destination = "secrets/traefik.toml" - } } } } |