data "docker_registry_image" "radicale" { name = "tomsquest/docker-radicale:latest" } resource "docker_image" "radicale" { name = "${data.docker_registry_image.radicale.name}" pull_triggers = ["${data.docker_registry_image.radicale.sha256_digest}"] } resource docker_container "radicale" { name = "radicale" image = "${docker_image.radicale.latest}" labels { "traefik.port" = 5232 "traefik.enable" = "true" "traefik.frontend.headers.SSLTemporaryRedirect" = "true" "traefik.frontend.headers.STSSeconds" = "2592000" "traefik.frontend.headers.STSIncludeSubdomains" = "false" "traefik.frontend.headers.contentTypeNosniff" = "true" "traefik.frontend.headers.browserXSSFilter" = "true" } volumes { host_path = "/mnt/xwing/data/radicale" container_path = "/data" } volumes { host_path = "/mnt/xwing/config/radicale" container_path = "/config" read_only = true } upload { content = "${file("${path.module}/config")}" file = "/config/config" } env = [ "PGID=1003", "PUID=1000", "TZ=Asia/Kolkata", ] restart = "unless-stopped" destroy_grace_seconds = 10 must_run = true }