aboutsummaryrefslogtreecommitdiff
path: root/terraform/unifi-controller/unifi.tf
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2024-11-03 17:13:56 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2024-11-03 17:13:56 +0100
commit8ceb4bbe219230a7e8297f7bd78c141202454dba (patch)
treec7b8c5b8f64c061d86cb2a41711d7afe989f2965 /terraform/unifi-controller/unifi.tf
parent9fc7d5ed1a8a31bd0ddcba0568c8acc280ee5021 (diff)
downloadinfra-8ceb4bbe219230a7e8297f7bd78c141202454dba.tar.gz
infra-8ceb4bbe219230a7e8297f7bd78c141202454dba.tar.bz2
infra-8ceb4bbe219230a7e8297f7bd78c141202454dba.tar.xz
infra-8ceb4bbe219230a7e8297f7bd78c141202454dba.zip
unifi
Diffstat (limited to 'terraform/unifi-controller/unifi.tf')
-rw-r--r--terraform/unifi-controller/unifi.tf82
1 files changed, 43 insertions, 39 deletions
diff --git a/terraform/unifi-controller/unifi.tf b/terraform/unifi-controller/unifi.tf
index 4b0f1c6..4f1317f 100644
--- a/terraform/unifi-controller/unifi.tf
+++ b/terraform/unifi-controller/unifi.tf
@@ -1,34 +1,36 @@
-data "docker_network" "traefik" {
- name = "traefik"
-}
+# data "docker_network" "traefik" {
+# name = "traefik"
+# }
-data "docker_registry_image" "unifi-controller" {
+data "docker_registry_image" "unifi-network-application" {
name = local.docker_image_controller
}
-resource "docker_image" "unifi-controller" {
- name = data.docker_registry_image.unifi-controller.name
- pull_triggers = [data.docker_registry_image.unifi-controller.sha256_digest]
+resource "docker_image" "unifi-network-application" {
+ name = data.docker_registry_image.unifi-network-application.name
+ pull_triggers = [data.docker_registry_image.unifi-network-application.sha256_digest]
}
-resource "docker_volume" "unifi-controller" {
- name = "unifi-controller-new"
+resource "docker_volume" "unifi-network-application" {
+ name = "unifi-network-application"
}
-resource "docker_container" "unifi-controller" {
- image = docker_image.unifi-controller.image_id
- name = "unifi-controller"
- hostname = "unifi-controller"
+resource "docker_container" "unifi-network-application" {
+ image = docker_image.unifi-network-application.image_id
+ name = "unifi-network-application"
+ hostname = "unifi-network-application"
# privileged = true
- # must_run = false
+ must_run = true
- networks_advanced {
- name = data.docker_network.traefik.name
- }
+ network_mode = "host"
- networks_advanced {
- name = docker_network.unifi.name
- }
+# networks_advanced {
+# name = data.docker_network.traefik.name
+# }
+
+# networks_advanced {
+# name = docker_network.unifi.name
+# }
dynamic "ports" {
for_each = [
@@ -40,7 +42,8 @@ resource "docker_container" "unifi-controller" {
{ port = 8080, proto = "tcp" }, # Required for device communication
# Public HTTP is handled by traefik
- # { port = 8443, proto = "tcp" }, # Unifi web admin port
+ # Not anymore!
+ { port = 8443, proto = "tcp" }, # Unifi web admin port
# Not used
# { port = 8843, proto = "tcp" }, # Unifi guest portal HTTPS redirect port
@@ -57,27 +60,27 @@ resource "docker_container" "unifi-controller" {
}
volumes {
- volume_name = docker_volume.unifi-controller.name
+ volume_name = docker_volume.unifi-network-application.name
read_only = false
container_path = "/config"
}
- dynamic "labels" {
- for_each = [
- { label = "traefik.enable", value = "true" },
- { label = "traefik.http.routers.unifi-controller.rule", value = "Host(`${local.domain_name}`)" },
- { label = "traefik.http.routers.unifi-controller.entrypoints", value = "websecure" },
- { label = "traefik.http.routers.unifi-controller.tls.certresolver", value = "linode" },
- { label = "traefik.http.services.unifi-controller.loadbalancer.server.port", value = "8443" },
- { label = "traefik.http.services.unifi-controller.loadbalancer.server.scheme", value = "https" },
- { label = "traefik.docker.network", value = "traefik" },
- # { label = "traefik.http.services.unifi-controller.loadbalancer.passHostHeader", value = "false" },
- ]
- content {
- label = labels.value["label"]
- value = labels.value["value"]
- }
- }
+# dynamic "labels" {
+# for_each = [
+# { label = "traefik.enable", value = "true" },
+# { label = "traefik.http.routers.unifi-network-application.rule", value = "Host(`${local.domain_name}`)" },
+# { label = "traefik.http.routers.unifi-network-application.entrypoints", value = "websecure" },
+# { label = "traefik.http.routers.unifi-network-application.tls.certresolver", value = "linode" },
+# { label = "traefik.http.services.unifi-network-application.loadbalancer.server.port", value = "8443" },
+# { label = "traefik.http.services.unifi-network-application.loadbalancer.server.scheme", value = "https" },
+# { label = "traefik.docker.network", value = "traefik" },
+# # { label = "traefik.http.services.unifi-network-application.loadbalancer.passHostHeader", value = "false" },
+# ]
+# content {
+# label = labels.value["label"]
+# value = labels.value["value"]
+# }
+# }
env = [
"PUID=1000",
@@ -86,7 +89,8 @@ resource "docker_container" "unifi-controller" {
"MEM_LIMIT=default",
"MONGO_USER=${local.mongo_username}",
"MONGO_PASS=${local.mongo_password}",
- "MONGO_HOST=${docker_container.unifi-mongo.hostname}",
+ #"MONGO_HOST=${docker_container.unifi-mongo.hostname}",
+ "MONGO_HOST=localhost",
"MONGO_PORT=27017",
"MONGO_DBNAME=${local.mongo_database}",
]