The media catalogue places the mesh's files and names its accesses (issues 174, 153)
Twelve definitions stop naming /var/lib/mesh/<module>: the directory says `place: "mesh"` (kometa
gains the directory it never declared), and every credential and mount names it as
${dir:mesh-state}. Every access has an id, kept beside its path as the default an assignment may
replace, and the host side of every mount says ${access:<id>} — so a home server's assignment can
say `accesses: {series: "/storage/media/series", …}` and `places: {config: {path: …, owner: …}}`
and the mounts follow. Resolved with no placement, eleven converted definitions name exactly the
paths they named before (TestPlacedDirectoriesKeepTheirPaths over both checkouts); kometa's added
directory is where the mesh already writes.
Needs the controller from mesh-controller #175/#176, running since 2026-10-01 00:06.
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
"subtitle.downloaded"
|
||||
],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/bazarr/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -21,18 +21,22 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "movies",
|
||||
"path": "/services/media/movies",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "series",
|
||||
"path": "/services/media/series",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "anime",
|
||||
"path": "/services/media/anime",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read"
|
||||
}
|
||||
@@ -41,8 +45,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/bazarr",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -71,10 +75,10 @@
|
||||
],
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/movies:/movies",
|
||||
"/services/media/series:/series",
|
||||
"/services/media/anime:/anime",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:movies}:/movies",
|
||||
"${access:series}:/series",
|
||||
"${access:anime}:/anime",
|
||||
"${access:downloads}:/downloads"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -91,7 +95,7 @@
|
||||
"name": "mesh-bazarr",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/bazarr/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:config}:/var/lib/bazarr/config:ro"
|
||||
],
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/bookshelf/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -24,10 +24,12 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "books",
|
||||
"path": "/services/media/books",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -36,8 +38,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/bookshelf",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -66,8 +68,8 @@
|
||||
],
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/books:/books",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:books}:/books",
|
||||
"${access:downloads}:/downloads"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -76,7 +78,7 @@
|
||||
"name": "mesh-bookshelf",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/bookshelf/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:config}:/var/lib/bookshelf/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
@@ -30,8 +30,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/jackett",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -76,7 +76,7 @@
|
||||
"name": "mesh-jackett",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/jackett/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:config}:/var/lib/jackett/config:ro"
|
||||
],
|
||||
@@ -93,7 +93,7 @@
|
||||
}
|
||||
],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/jackett/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"requires": [
|
||||
"route"
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
],
|
||||
"own-secrets": {
|
||||
"tmdb": "${dir:state}/tmdb.secret",
|
||||
"broker": "/var/lib/mesh/kometa/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"build": {
|
||||
"on": [
|
||||
@@ -39,6 +39,12 @@
|
||||
"plex-api": "${dir:state}/plex-api.secret"
|
||||
},
|
||||
"resources": [
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
"type": "directory",
|
||||
@@ -97,7 +103,7 @@
|
||||
"name": "mesh-kometa",
|
||||
"artifact": "runtime",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/kometa/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:state}/config.yml:/var/lib/kometa/config.yml:ro",
|
||||
"${dir:config}:/var/lib/kometa/config:ro"
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/lidarr/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -36,10 +36,12 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "music",
|
||||
"path": "/services/media/music",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -48,8 +50,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/lidarr",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -90,8 +92,8 @@
|
||||
"${dir:config}:/config",
|
||||
"${dir:custom-cont-init}:/custom-cont-init.d",
|
||||
"${dir:custom-services}:/custom-services.d",
|
||||
"/services/media/music:/music",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:music}:/music",
|
||||
"${access:downloads}:/downloads"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -100,7 +102,7 @@
|
||||
"name": "mesh-lidarr",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/lidarr/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:config}:/var/lib/lidarr/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/nzbget/broker",
|
||||
"password": "/var/lib/mesh/nzbget/password"
|
||||
"broker": "${dir:mesh-state}/broker",
|
||||
"password": "${dir:mesh-state}/password"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -24,6 +24,7 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -32,8 +33,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/nzbget",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -63,8 +64,8 @@
|
||||
],
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/downloads:/downloads",
|
||||
"/var/lib/mesh/nzbget/password:/run/secrets/password:ro"
|
||||
"${access:downloads}:/downloads",
|
||||
"${dir:mesh-state}/password:/run/secrets/password:ro"
|
||||
],
|
||||
"restart-on": [
|
||||
"needs-password"
|
||||
@@ -84,8 +85,8 @@
|
||||
"name": "mesh-nzbget",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/nzbget/broker:/run/secrets/broker:ro",
|
||||
"/var/lib/mesh/nzbget/password:/run/secrets/password:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/password:/run/secrets/password:ro",
|
||||
"${dir:state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:config}:/var/lib/nzbget/config:ro"
|
||||
],
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
"request.approved"
|
||||
],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/ombi/broker",
|
||||
"api-key": "/var/lib/mesh/ombi/api-key"
|
||||
"broker": "${dir:mesh-state}/broker",
|
||||
"api-key": "${dir:mesh-state}/api-key"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -25,8 +25,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/ombi",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -60,7 +60,7 @@
|
||||
{
|
||||
"id": "runtime-config",
|
||||
"type": "file",
|
||||
"path": "/var/lib/mesh/ombi/config.json",
|
||||
"path": "${dir:mesh-state}/config.json",
|
||||
"mode": "0600",
|
||||
"content": "{}\n",
|
||||
"merge": "json"
|
||||
@@ -71,9 +71,9 @@
|
||||
"name": "mesh-ombi",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/ombi/broker:/run/secrets/broker:ro",
|
||||
"/var/lib/mesh/ombi/api-key:/run/secrets/api-key:ro",
|
||||
"/var/lib/mesh/ombi/config.json:/run/config/config.json:ro"
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/api-key:/run/secrets/api-key:ro",
|
||||
"${dir:mesh-state}/config.json:/run/config/config.json:ro"
|
||||
],
|
||||
"env": {
|
||||
"MESH_BROKER_FILE": "/run/secrets/broker",
|
||||
@@ -93,7 +93,7 @@
|
||||
"network": "host",
|
||||
"run-once": true,
|
||||
"volumes": [
|
||||
"/var/lib/mesh/ombi/api-key:/run/secrets/api-key:ro",
|
||||
"${dir:mesh-state}/api-key:/run/secrets/api-key:ro",
|
||||
"${dir:state}/sonarr-api.json:/run/connections/sonarr-api.json:ro",
|
||||
"${dir:state}/sonarr-api.secret:/run/connections/sonarr-api.secret:ro",
|
||||
"${dir:state}/radarr-api.json:/run/connections/radarr-api.json:ro",
|
||||
|
||||
+20
-12
@@ -25,7 +25,7 @@
|
||||
"*.download.completed"
|
||||
],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/plex/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -66,34 +66,42 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "movies",
|
||||
"path": "/services/media/movies",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "series",
|
||||
"path": "/services/media/series",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "anime",
|
||||
"path": "/services/media/anime",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "music",
|
||||
"path": "/services/media/music",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "audiobooks",
|
||||
"path": "/services/media/audiobooks",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "sport-games",
|
||||
"path": "/services/media/sport-games",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "live-shows",
|
||||
"path": "/services/media/live-shows",
|
||||
"mode": "read"
|
||||
},
|
||||
{
|
||||
"id": "formula-1",
|
||||
"path": "/services/media/formula-1",
|
||||
"mode": "read"
|
||||
}
|
||||
@@ -102,8 +110,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/plex",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -154,14 +162,14 @@
|
||||
"${dir:config}:/config",
|
||||
"${dir:data}:/data",
|
||||
"${dir:transcode}:/transcode",
|
||||
"/services/media/movies:/movies:ro",
|
||||
"/services/media/series:/series:ro",
|
||||
"/services/media/anime:/anime:ro",
|
||||
"/services/media/music:/music:ro",
|
||||
"/services/media/audiobooks:/audiobooks:ro",
|
||||
"/services/media/sport-games:/sport-games:ro",
|
||||
"/services/media/live-shows:/live-shows:ro",
|
||||
"/services/media/formula-1:/formula-1:ro"
|
||||
"${access:movies}:/movies:ro",
|
||||
"${access:series}:/series:ro",
|
||||
"${access:anime}:/anime:ro",
|
||||
"${access:music}:/music:ro",
|
||||
"${access:audiobooks}:/audiobooks:ro",
|
||||
"${access:sport-games}:/sport-games:ro",
|
||||
"${access:live-shows}:/live-shows:ro",
|
||||
"${access:formula-1}:/formula-1:ro"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -170,7 +178,7 @@
|
||||
"name": "mesh-plex",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/plex/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:config}:/var/lib/plex/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/qbittorrent/broker",
|
||||
"password": "/var/lib/mesh/qbittorrent/password"
|
||||
"broker": "${dir:mesh-state}/broker",
|
||||
"password": "${dir:mesh-state}/password"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -39,6 +39,7 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -47,8 +48,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/qbittorrent",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -76,7 +77,7 @@
|
||||
},
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:downloads}:/downloads"
|
||||
],
|
||||
"network": "host"
|
||||
},
|
||||
@@ -94,8 +95,8 @@
|
||||
"name": "mesh-qbittorrent",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/qbittorrent/broker:/run/secrets/broker:ro",
|
||||
"/var/lib/mesh/qbittorrent/password:/run/secrets/password:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/password:/run/secrets/password:ro",
|
||||
"${dir:state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:config}:/var/lib/qbittorrent/config:ro"
|
||||
],
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/radarr/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -36,10 +36,12 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "movies",
|
||||
"path": "/services/media/movies",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -48,8 +50,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/radarr",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -78,8 +80,8 @@
|
||||
],
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/movies:/movies",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:movies}:/movies",
|
||||
"${access:downloads}:/downloads"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -88,7 +90,7 @@
|
||||
"name": "mesh-radarr",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/radarr/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:config}:/var/lib/radarr/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
],
|
||||
"consumes": [],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/sonarr/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"listens": [
|
||||
{
|
||||
@@ -36,14 +36,17 @@
|
||||
],
|
||||
"accesses": [
|
||||
{
|
||||
"id": "series",
|
||||
"path": "/services/media/series",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "anime",
|
||||
"path": "/services/media/anime",
|
||||
"mode": "read-write"
|
||||
},
|
||||
{
|
||||
"id": "downloads",
|
||||
"path": "/services/media/downloads",
|
||||
"mode": "read-write"
|
||||
}
|
||||
@@ -52,8 +55,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/sonarr",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -82,9 +85,9 @@
|
||||
],
|
||||
"volumes": [
|
||||
"${dir:config}:/config",
|
||||
"/services/media/series:/series",
|
||||
"/services/media/anime:/anime",
|
||||
"/services/media/downloads:/downloads"
|
||||
"${access:series}:/series",
|
||||
"${access:anime}:/anime",
|
||||
"${access:downloads}:/downloads"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -93,7 +96,7 @@
|
||||
"name": "mesh-sonarr",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/sonarr/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:config}:/var/lib/sonarr/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"watch.recorded"
|
||||
],
|
||||
"own-secrets": {
|
||||
"broker": "/var/lib/mesh/tautulli/broker"
|
||||
"broker": "${dir:mesh-state}/broker"
|
||||
},
|
||||
"capabilities": [
|
||||
"container-runtime"
|
||||
@@ -23,8 +23,8 @@
|
||||
{
|
||||
"id": "mesh-state",
|
||||
"type": "directory",
|
||||
"path": "/var/lib/mesh/tautulli",
|
||||
"mode": "0700"
|
||||
"mode": "0700",
|
||||
"place": "mesh"
|
||||
},
|
||||
{
|
||||
"id": "state",
|
||||
@@ -82,7 +82,7 @@
|
||||
{
|
||||
"id": "runtime-config",
|
||||
"type": "file",
|
||||
"path": "/var/lib/mesh/tautulli/config.json",
|
||||
"path": "${dir:mesh-state}/config.json",
|
||||
"mode": "0600",
|
||||
"content": "{}\n",
|
||||
"merge": "json"
|
||||
@@ -93,8 +93,8 @@
|
||||
"name": "mesh-tautulli",
|
||||
"network": "host",
|
||||
"volumes": [
|
||||
"/var/lib/mesh/tautulli/broker:/run/secrets/broker:ro",
|
||||
"/var/lib/mesh/tautulli/config.json:/run/config/config.json:ro",
|
||||
"${dir:mesh-state}/broker:/run/secrets/broker:ro",
|
||||
"${dir:mesh-state}/config.json:/run/config/config.json:ro",
|
||||
"${dir:config}:/var/lib/tautulli/config:ro"
|
||||
],
|
||||
"env": {
|
||||
|
||||
Reference in New Issue
Block a user