From 29c9c697ee558651000756fddcbc8e3c1f542c26 Mon Sep 17 00:00:00 2001 From: sstent Date: Sat, 7 Feb 2026 17:33:25 -0800 Subject: [PATCH] fix: use static ports and docker port mapping --- litefs.yml | 10 ++++++---- navidrome-litefs-v2.nomad | 24 ++++++++++++++++-------- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/litefs.yml b/litefs.yml index 844db65..e2fd132 100644 --- a/litefs.yml +++ b/litefs.yml @@ -8,18 +8,20 @@ data: # Use Consul for leader election lease: type: "consul" - advertise-url: "http://${ADVERTISE_IP}:8081" + advertise-url: "http://${ADVERTISE_IP}:20202" consul: url: "${CONSUL_URL}" key: "litefs/navidrome" # Internal HTTP API for replication http: - addr: "0.0.0.0:8081" + addr: ":20202" # The HTTP Proxy routes traffic to handle write-forwarding +# It listens on 8080 inside the container. +# Nomad will map host 4533 to this port. proxy: - addr: ":${PORT}" + addr: ":8080" target: "localhost:4533" db: "navidrome.db" passthrough: @@ -29,4 +31,4 @@ proxy: - "*.jpg" - "*.jpeg" - "*.gif" - - "*.svg" + - "*.svg" \ No newline at end of file diff --git a/navidrome-litefs-v2.nomad b/navidrome-litefs-v2.nomad index a4363b8..b51aa94 100644 --- a/navidrome-litefs-v2.nomad +++ b/navidrome-litefs-v2.nomad @@ -22,19 +22,27 @@ job "navidrome-litefs" { } network { - mode = "host" - port "http" {} + # Request static ports on the host + port "http" { + static = 4533 + to = 8080 # Maps host 4533 to container 8080 (LiteFS Proxy) + } + port "litefs" { + static = 20202 + to = 20202 # Maps host 20202 to container 20202 (LiteFS Replication) + } } task "navidrome" { driver = "docker" config { - # Update this to match your actual registry and image name - image = "gitea.service.dc1.fbleagh.duckdns.org/sstent/navidrome-litefs:latest" - privileged = true # Needed for FUSE - network_mode = "host" + image = "gitea.service.dc1.fbleagh.duckdns.org/sstent/navidrome-litefs:latest" + privileged = true # Still needed for FUSE + ports = ["http", "litefs"] + # Removed network_mode = "host" + volumes = [ "/mnt/configs/navidrome_litefs:/var/lib/litefs", "/mnt/Public/configs/navidrome:/shared_data", @@ -48,7 +56,7 @@ job "navidrome-litefs" { # LiteFS Config CONSUL_URL = "http://${attr.unique.network.ip-address}:8500" ADVERTISE_IP = "${attr.unique.network.ip-address}" - PORT = "${NOMAD_PORT_http}" + PORT = "8080" # Internal proxy port # Navidrome Config ND_DATAFOLDER = "/local/data" @@ -94,4 +102,4 @@ job "navidrome-litefs" { } } } -} +} \ No newline at end of file