Understanding TNS Docker deployment

YujiTFD

Dabbler
Joined
May 5, 2021
Messages
22
Good day.

Can anyone clarify Docker image deployment inside TNS, please? I'm struggling with advanced deployment, like Navidrome installation: which command goes into "Container Entrypoint", which - to "Container Environment", where do I define volumes, as it stated in config?
===
version: "3"
services:
navidrome:
image: deluan/navidrome:latest
user: 1000:1000 # should be owner of volumes
ports:
- "4533:4533"
restart: unless-stopped
environment:
# Optional: put your config options customization here. Examples:
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: ""
volumes:
- "/path/to/data:/data"
- "/path/to/your/music/folder:/music:ro"
===

I tried setting up environment, using config file - no luck, contaiter is deploying indefinitely and never actually start. I can deploy container in seprate Ubuntu VM, but I have to find closure with TNS. Would appreciate help for this matter.
 

gary_1

Explorer
Joined
Sep 26, 2017
Messages
78
Use the "Launch docker image" button, set the image to deluan/navidrome (assuming it's available at that url on dockerhub, if not you need the full repo url) and the image tag to latest.

Under container environment variables, add the Optional options ND_LOGLEVEL etc if you want to customise.

Under port forwarding container port: 4533, node port: the port you want to access it on (4533 for example)

Under storage add a host path volume with HostPath of the directory in one of your hosts datasets and mount path as "/data" and repeat for the other mount path "/music" (without the :ro, you can tick the read-only flag instead)

That should result in a deployment that you can then access via the domain for your TNS at port 4533. If it's a web interface, you can also consider installing Traefik app and the "external service" app to let you access the app via a subdomain with https and not having to remember the port.
 

YujiTFD

Dabbler
Joined
May 5, 2021
Messages
22
<...>
That should result in a deployment that you can then access via the domain for your TNS at port 4533. If it's a web interface, you can also consider installing Traefik app and the "external service" app to let you access the app via a subdomain with https and not having to remember the port.
Oh, wow, it worked! Thank you kindly for your reponse!

But how did you rule out settings one had to omit, by experience or there are guidlines how to correspond regular Docker setup versus Docker @ Kubernetes inside TNS? I would very much want to actually understand the algorithm myself :confused:
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
But how did you rule out settings one had to omit,
restart: unless-stopped
Automatic with Kubernetes.

# Optional: put your config options customization here. Examples:
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: ""
Says it's optional... I guess you can either do it in the GUI or you could set those as environment variables if you wanted to.

user: 1000:1000 # should be owner of volumes
Possibly the defaults.

version: "3"
services:
navidrome:
These are config file (I guess docker compose or something like that) specific needs, you're not creating one of those here.
 
Top