aboutsummaryrefslogtreecommitdiff
path: root/nomad/traefik.hcl
diff options
context:
space:
mode:
Diffstat (limited to 'nomad/traefik.hcl')
-rw-r--r--nomad/traefik.hcl46
1 files changed, 35 insertions, 11 deletions
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"
- }
}
}
}