Thanks for the container!
I'm running Nexus on my QNAP NAS (x64 with QTS 5.1.5) via Container Station 3.0 mainly as DLNA server (unfortunately Kodi doesn't serve pictures) and it works quite well. In some clients like BubbleUPnP music album covers only appear after some refreshes (maybe some timeout issue?). Control via YATSE works great as with normal Kodi.
Though, I couldn't get the DLNA server reliably detectable (due to the random port selection) with the default NAT mode, even with all ports mapped I couldn't get it working. So I had to use bridge mode and gave the server its own IP address in my home network. As this wasn't trivial to figure out (not really documented), here is how it can be done without having to fiddle around in the Container Station after each pull again. Hope it helps the QNAP NAS users.
Here is how my docker compose file looks like. The most important part is in network* sections:
docker_compose.yml:
version: '2.4'
services:
kodi-headless:
image: matthuisman/kodi-headless:Nexus
container_name: kodi-headless
environment:
- PUID=<uid>
- PGID=<gid>
- MYSQL_HOST=<ip-address1>
- MYSQL_USER=<user>
- MYSQL_PASSWORD=<password>
- TZ=Europe/Berlin
volumes:
- /share/<kodi_home_share>/:/config/.kodi
network_mode: bridge
networks:
# see networks below
qnet-static-eth0-12a456:
ipv4_address: <ip-address2>
ports:
- 8191:8191 # web-ui server
- 9090:9090 # web-socket server (json-rpc)
- 9777:9777/udp # event server
restart: unless-stopped
networks:
# Note: Get qnet-static-eth0- from "docker network ls"
qnet-static-eth0-12a456:
external: true
The Container Station creates a virtual adapter in the QTS virtual switch and gives it a random name. This name can be queried on ssh via "docker network ls" and needs to be set under networks.
I also had then to change the port for the web-ui server because 8080 is already used by the NAS administration web server. This port also needs to be set in advancedsettings.xml accordingly:
advancedsettings.xml:
<services>
<webserverport>8191</webserverport>
</services>