job "frigate" { datacenters = ["dc1"] type = "service" constraint { attribute = "${attr.unique.hostname}" value = "int" } group "frigate" { count = 1 update { canary = 1 auto_promote = true auto_revert = true } network { port "http" { to = 5000 } } volume "frigate-config" { type = "host" source = "frigate-config" read_only = false access_mode = "single-node-writer" attachment_mode = "file-system" } volume "frigate-media" { type = "host" source = "frigate-media" read_only = false access_mode = "single-node-writer" attachment_mode = "file-system" } task "frigate" { driver = "docker" config { image = "registry.i80.dk/gitea/frigate:latest" force_pull = true privileged = true shm_size = 268435456 volumes = ["/etc/localtime:/etc/localtime:ro"] ports = ["http"] } volume_mount { volume = "frigate-config" destination = "/config" read_only = false } volume_mount { volume = "frigate-media" destination = "/media/frigate" read_only = false } env { FRIGATE_RTSP_PASSWORD = "" } service { name = "frigate" port = "http" tags = [ "traefik.enable=true", "traefik.http.routers.frigate.rule=Host(`cams.i80.dk`)", "traefik.http.routers.frigate.tls=true", ] check { type = "http" path = "/api/version" interval = "10s" timeout = "5s" } } resources { cpu = 2000 memory = 4096 } } } }