diff options
Diffstat (limited to 'terraform/unifi-controller/mongo.tf')
-rw-r--r-- | terraform/unifi-controller/mongo.tf | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/terraform/unifi-controller/mongo.tf b/terraform/unifi-controller/mongo.tf new file mode 100644 index 0000000..f7c1950 --- /dev/null +++ b/terraform/unifi-controller/mongo.tf @@ -0,0 +1,51 @@ +# resource "docker_network" "unifi" { +# name = "unifi" +# } + +data "docker_registry_image" "mongo" { + name = local.docker_image_mongo +} + +resource "docker_image" "mongo" { + name = data.docker_registry_image.mongo.name + pull_triggers = [data.docker_registry_image.mongo.sha256_digest] +} + +resource "docker_volume" "unifi-mongo" { + name = "unifi-mongo" +} + +resource "docker_container" "unifi-mongo" { + image = docker_image.mongo.image_id + name = "unifi-mongo" + hostname = "unifi-mongo" + +# networks_advanced { +# name = docker_network.unifi.name +# } + + network_mode = "host" + + volumes { + volume_name = docker_volume.unifi-mongo.name + read_only = false + container_path = "/data/db" + } +} + +output "mongo_init_js" { + sensitive = true + value = <<-EOF + db.getSiblingDB("${local.mongo_database}"). + createUser({ + user: "${local.mongo_database}", + pwd: "${local.mongo_password}", + roles: [{role: "dbOwner", db: "${local.mongo_database}"}]}); + + db.getSiblingDB("${local.mongo_database}_stat"). + createUser({ + user: "${local.mongo_database}", + pwd: "${local.mongo_password}", + roles: [{role: "dbOwner", db: "${local.mongo_database}_stat"}]}); + EOF +} |