my little son just got a Toniebox 2 - to be honest, it’s only a few months since I heard from Toniesboxes the first time. Being interested in how it all works, I searched the internet a bit and quickly discovered a whole community is dedicated to Toniebox hacking. Now, besides my sons Toniebox 2, I have 2 Tonieboxes 1 (ESP32) for personal experiments
On a 0-10 scale for tech-savvyness, I would say I’m around 7. But using containers, playing with ports and trying to hack a device, first time I try this. (actually, I am still not very sure to have understood what a container conceptually is). Anyway, I’m on my way to set up Teddycloud on my Synology NAS, using this video as a guideline: https://www.youtube.com/watch?app=desktop&v=JpMRyshgy9o
Here are the steps I performed until now:
Installing docker (or container manager, as it is called now) on the NAS: easy
adding portainer: also worked quite quickly, but it’s not like in the video, where portainer has a dedicated IP-address - I can access it via the IP of my NAS on port 9000. I guess this does not make any difference?
setting up Teddycloud: here the problems begin. I tried the docker-compose.yaml referenced in the tonies wiki, but then it says:
Failed to deploy a stack: compose up operation failed: Error response from daemon: driver failed programming external connectivity on endpoint teddycloud (891a711651da3e3072fac9fd151b6db6dac61170c4aa9c43b81f5aeb2e3ad005): Error starting userland proxy: listen tcp4 0.0.0.0:443: bind: address already in use
Well, I guess this means another app is already using port 443 and blocking it, I need to change it. At some point in the video, @0xbadbee says “keyword: macvlan” (never heard that before), so I tried to look for that. I found this discussion and tried to adapt the compose-file posted there to my situation, but I’m not quite sure if this is a good approach and where I need to change the IP-adresses. With my current version, I can “deploy the stack” , but the logs show that it is actually empty:
Thank you for the quick reply, that worked!
So if I understand it well, I can just use any random IP-adress in my network that is not already taken by another device (NAS, printer,…)?
Just to understand how it works: My local network is a street. The IP-address on the devices in my network are like the houses in that street. One of these houses, number 122, is my NAS. When I enter it, I see it has quite a few rooms. Only specific people ( → applications) can enter specific rooms. In my case, room 9000 is reserved for portainer. But it is kind of a magic room: entering it will beam me (“macvlan me”) to another house of the street (→ teddycloud). Does this analogy make sense?