Add support for nginx streams
This commit is contained in:
@@ -102,6 +102,15 @@ resource "kubernetes_config_map" "nginx_default_config" {
|
||||
data = local.services_config
|
||||
}
|
||||
|
||||
resource "kubernetes_config_map" "nginx_streams_config" {
|
||||
metadata {
|
||||
name = "nginx-streams-config"
|
||||
namespace = kubernetes_namespace.reverse_proxy.metadata[0].name
|
||||
}
|
||||
|
||||
data = local.streams_config
|
||||
}
|
||||
|
||||
resource "kubernetes_config_map" "nginx_custom_50x_page" {
|
||||
|
||||
metadata {
|
||||
@@ -220,6 +229,7 @@ resource "kubernetes_deployment" "reverse_proxy" {
|
||||
"checksum/wireguard" = local.wireguard_config_checksum
|
||||
"checksum/auth_server" = local.auth_script_checksum
|
||||
"checksum/custom_50x" = local.errors_pages_checksum
|
||||
"checksum/streams" = local.streams_config_checksum
|
||||
}
|
||||
}
|
||||
spec {
|
||||
@@ -367,6 +377,16 @@ resource "kubernetes_deployment" "reverse_proxy" {
|
||||
}
|
||||
}
|
||||
|
||||
dynamic "port" {
|
||||
for_each = var.streams
|
||||
content {
|
||||
container_port = port.value.port
|
||||
name = substr(format("stream-%s", replace(port.key, ".", "-")), 0, 15)
|
||||
host_port = port.value.port
|
||||
protocol = upper(port.value.protocol)
|
||||
}
|
||||
}
|
||||
|
||||
volume_mount {
|
||||
name = "nginx"
|
||||
mount_path = "/etc/nginx/nginx.conf"
|
||||
@@ -380,6 +400,12 @@ resource "kubernetes_deployment" "reverse_proxy" {
|
||||
read_only = true
|
||||
}
|
||||
|
||||
volume_mount {
|
||||
name = "streams"
|
||||
mount_path = "/etc/nginx/streams.d/"
|
||||
read_only = true
|
||||
}
|
||||
|
||||
volume_mount {
|
||||
name = "nginx-errors"
|
||||
mount_path = "/usr/share/nginx/html/errors"
|
||||
@@ -437,6 +463,13 @@ resource "kubernetes_deployment" "reverse_proxy" {
|
||||
}
|
||||
}
|
||||
|
||||
volume {
|
||||
name = "streams"
|
||||
config_map {
|
||||
name = kubernetes_config_map.nginx_streams_config.metadata[0].name
|
||||
}
|
||||
}
|
||||
|
||||
volume {
|
||||
name = "nginx-errors"
|
||||
config_map {
|
||||
@@ -471,3 +504,34 @@ resource "kubernetes_deployment" "reverse_proxy" {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# resource "kubernetes_service" "reverse_proxy_streams" {
|
||||
# count = length(var.streams) > 0 ? 1 : 0
|
||||
# metadata {
|
||||
# name = "stream-ports"
|
||||
# namespace = kubernetes_namespace.reverse_proxy.metadata[0].name
|
||||
# }
|
||||
|
||||
# spec {
|
||||
# selector = {
|
||||
# app = "reverse-proxy"
|
||||
# }
|
||||
|
||||
# dynamic "port" {
|
||||
# for_each = var.streams
|
||||
# content {
|
||||
# name = format("%s-%s-%d", port.key, port.value.protocol, port.value.port)
|
||||
# port = port.value.port
|
||||
# target_port = port.value.port
|
||||
# protocol = upper(port.value.protocol)
|
||||
# }
|
||||
# }
|
||||
# type = "LoadBalancer"
|
||||
# }
|
||||
|
||||
# lifecycle {
|
||||
# ignore_changes = [
|
||||
# metadata[0].annotations
|
||||
# ]
|
||||
# }
|
||||
# }
|
||||
|
||||
Reference in New Issue
Block a user