546a8bfb95
Add the ingress gateway example from the noamd connect examples to the e2e Connect suite. Includes the ACLs enabled version, which means the nomad server consul acl policy will require operator=write permission.
89 lines
1.9 KiB
HCL
89 lines
1.9 KiB
HCL
job "ig-bridge-demo" {
|
|
|
|
datacenters = ["dc1"]
|
|
|
|
constraint {
|
|
attribute = "${attr.kernel.name}"
|
|
value = "linux"
|
|
}
|
|
|
|
group "ingress-group" {
|
|
|
|
network {
|
|
mode = "bridge"
|
|
port "inbound" {
|
|
static = 8080
|
|
to = 8080
|
|
}
|
|
}
|
|
|
|
service {
|
|
name = "my-ingress-service"
|
|
port = "8080"
|
|
|
|
connect {
|
|
gateway {
|
|
proxy {
|
|
# The following options are automatically set by Nomad if not
|
|
# explicitly configured when using bridge networking.
|
|
#
|
|
# envoy_gateway_no_default_bind = true
|
|
# envoy_gateway_bind_addresses "uuid-api" {
|
|
# address = "0.0.0.0"
|
|
# port = <associated listener.port>
|
|
# }
|
|
#
|
|
# Additional options are documented at
|
|
# https://www.nomadproject.io/docs/job-specification/gateway#proxy-parameters
|
|
}
|
|
|
|
ingress {
|
|
# Nomad will automatically manage the Configuration Entry in Consul
|
|
# given the parameters in the ingress block.
|
|
#
|
|
# Additional options are documented at
|
|
# https://www.nomadproject.io/docs/job-specification/gateway#ingress-parameters
|
|
listener {
|
|
port = 8080
|
|
protocol = "tcp"
|
|
service {
|
|
name = "uuid-api"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
group "generator" {
|
|
network {
|
|
mode = "host"
|
|
port "api" {}
|
|
}
|
|
|
|
service {
|
|
name = "uuid-api"
|
|
port = "${NOMAD_PORT_api}"
|
|
|
|
connect {
|
|
native = true
|
|
}
|
|
}
|
|
|
|
task "generate" {
|
|
driver = "docker"
|
|
|
|
config {
|
|
image = "hashicorpnomad/uuid-api:v3"
|
|
network_mode = "host"
|
|
}
|
|
|
|
env {
|
|
BIND = "0.0.0.0"
|
|
PORT = "${NOMAD_PORT_api}"
|
|
}
|
|
}
|
|
}
|
|
}
|