Nomad
proxy Block
Placement | job -> group -> service -> connect -> sidecar_service -> proxy |
The proxy
block allows configuring various options for the sidecar proxy
managed by Nomad for Consul
Connect. It is valid only
within the context of a sidecar_service
block.
job "countdash" {
datacenters = ["dc1"]
group "api" {
network {
mode = "bridge"
}
service {
name = "count-api"
port = "9001"
connect {
sidecar_service {
proxy {}
}
}
}
task "web" {
driver = "docker"
config {
image = "hashicorpdev/counter-api:v3"
}
}
}
}
proxy
Parameters
local_service_address
(string: "127.0.0.1")
- The address the local service binds to. Useful to customize in clusters with mixed Connect and non-Connect services.local_service_port
(int: <varies>)
- The port the local service binds to. Usually the same as the parent service's port, it is useful to customize in clusters with mixed Connect and non-Connect services.upstreams
(upstreams: nil)
- Used to configure details of each upstream service that this sidecar proxy communicates with.expose
(expose: nil)
- Used to configure expose path configuration for Envoy. See Consul's Expose Paths Configuration Reference for more information.config
(map: nil)
- Proxy configuration that is opaque to Nomad and passed directly to Consul. See Consul Connect documentation for details. Keys and values support runtime variable interpolation.
proxy
Examples
The following example is a proxy specification that includes upstreams configuration.
sidecar_service {
proxy {
upstreams {
destination_name = "count-api"
local_bind_port = 8080
}
}
}