job "hybrid-nfs-app" { datacenters = ["dc1"] type = "service" # 使用约束条件区分存储类型 constraint { attribute = "${attr.unique.hostname}" operator = "regexp" value = "semaphore" } group "app" { count = 1 network { port "http" { static = 8080 } } # 对于本机(semaphore)使用host volume volume "local-storage" { type = "host" read_only = false source = "local-fnsync" } task "web-app" { driver = "exec" config { command = "python3" args = ["-m", "http.server", "8080", "--directory", "local/fnsync"] } template { data = <Hybrid NFS App - Running on {{ env "attr.unique.hostname" }}

Storage Type: {{ with eq (env "attr.unique.hostname") "semaphore" }}PVE Mount{{ else }}NFS{{ end }}

Timestamp: {{ now | date "2006-01-02 15:04:05" }}

EOH destination = "local/fnsync/index.html" } resources { cpu = 100 memory = 128 } service { name = "hybrid-nfs-app" port = "http" tags = ["hybrid", "nfs", "web"] check { type = "http" path = "/" interval = "10s" timeout = "2s" } } } } }