Christmas cookie ranking site
at main 49 lines 1.0 kB view raw
1resource "random_password" "postgres_password" { 2 length = 32 3 special = false 4} 5 6resource "docker_image" "postgres" { 7 name = "postgres:17.4" 8} 9 10resource "docker_volume" "postgres_data" { 11 name = "${var.name}-pgdata" 12 13 lifecycle { 14 prevent_destroy = true 15 } 16} 17 18resource "docker_container" "postgres" { 19 image = docker_image.postgres.image_id 20 name = "${var.name}-postgres" 21 wait = true 22 restart = var.restart 23 24 volumes { 25 container_path = "/var/lib/postgresql/data" 26 volume_name = docker_volume.postgres_data.name 27 read_only = false 28 } 29 30 network_mode = "bridge" 31 32 networks_advanced { 33 name = docker_network.internal.name 34 aliases = ["postgres"] 35 } 36 37 healthcheck { 38 test = ["CMD-SHELL", "pg_isready -U ${local.database_user}"] 39 interval = "2s" 40 timeout = "5s" 41 retries = 5 42 } 43 44 env = [ 45 "POSTGRES_USER=${local.database_user}", 46 "POSTGRES_DB=${local.database_name}", 47 "POSTGRES_PASSWORD=${random_password.postgres_password.result}", 48 ] 49}