2021-10-15 12:54:13 +00:00
|
|
|
locals {
|
|
|
|
transmission_labels = merge(var.traefik-labels, {
|
|
|
|
"traefik.frontend.auth.basic" = var.basic_auth
|
|
|
|
"traefik.port" = 9091
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
2018-04-22 12:39:44 +00:00
|
|
|
resource "docker_container" "transmission" {
|
2018-02-06 19:45:41 +00:00
|
|
|
name = "transmission"
|
2022-12-26 07:16:09 +00:00
|
|
|
image = docker_image.transmission.image_id
|
2018-02-06 19:45:41 +00:00
|
|
|
|
2021-10-15 12:54:13 +00:00
|
|
|
dynamic "labels" {
|
|
|
|
for_each = local.transmission_labels
|
|
|
|
content {
|
|
|
|
label = labels.key
|
|
|
|
value = labels.value
|
|
|
|
}
|
|
|
|
}
|
2018-02-06 19:45:41 +00:00
|
|
|
|
|
|
|
ports {
|
|
|
|
internal = 51413
|
|
|
|
external = 51413
|
2021-10-15 12:54:13 +00:00
|
|
|
ip = var.ips["eth0"]
|
2018-02-06 19:45:41 +00:00
|
|
|
protocol = "udp"
|
|
|
|
}
|
|
|
|
|
|
|
|
volumes {
|
|
|
|
host_path = "/mnt/xwing/config/transmission"
|
|
|
|
container_path = "/config"
|
|
|
|
}
|
|
|
|
|
|
|
|
volumes {
|
|
|
|
host_path = "/mnt/xwing/media/DL"
|
|
|
|
container_path = "/downloads"
|
|
|
|
}
|
|
|
|
|
2021-10-15 12:54:13 +00:00
|
|
|
volumes {
|
|
|
|
host_path = "/mnt/xwing/media/Music/Audiobooks"
|
|
|
|
container_path = "/audiobooks"
|
|
|
|
}
|
|
|
|
|
2018-02-06 19:45:41 +00:00
|
|
|
volumes {
|
|
|
|
host_path = "/mnt/xwing/data/watch/transmission"
|
|
|
|
container_path = "/watch"
|
|
|
|
}
|
|
|
|
|
|
|
|
upload {
|
2021-10-15 12:54:13 +00:00
|
|
|
content = file("${path.module}/conf/transmission.json")
|
2018-02-06 19:45:41 +00:00
|
|
|
file = "/config/settings.json"
|
|
|
|
}
|
|
|
|
|
|
|
|
env = [
|
|
|
|
"PGID=1003",
|
|
|
|
"PUID=1000",
|
|
|
|
"TZ=Asia/Kolkata",
|
|
|
|
]
|
|
|
|
|
2021-10-15 12:54:13 +00:00
|
|
|
networks = [docker_network.media.id, var.traefik-network-id]
|
2018-05-29 13:26:00 +00:00
|
|
|
|
2018-02-06 19:45:41 +00:00
|
|
|
memory = 1024
|
|
|
|
restart = "unless-stopped"
|
|
|
|
destroy_grace_seconds = 10
|
|
|
|
must_run = true
|
|
|
|
}
|
2018-05-29 13:26:00 +00:00
|
|
|
|
|
|
|
resource "docker_image" "transmission" {
|
2021-10-15 12:54:13 +00:00
|
|
|
name = data.docker_registry_image.transmission.name
|
|
|
|
pull_triggers = [data.docker_registry_image.transmission.sha256_digest]
|
2018-05-29 13:26:00 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
data "docker_registry_image" "transmission" {
|
|
|
|
name = "linuxserver/transmission:latest"
|
|
|
|
}
|
2021-10-15 12:54:13 +00:00
|
|
|
|