I'm working with two Docker Compose files: one for Immich/media and another for Speedtest-tracker. The issue is that they can't seem to run at the same time without causing problems. Even when I start one first, like the media services, and then try to start the tracker, I notice some strange behavior. The media services work fine locally and through Tailscale, but the Speedtest-tracker becomes inaccessible on my local network, although it does work via Tailscale. If I switch the order and start Speedtest-tracker first, then the media services become inaccessible, yet Speedtest-tracker works as expected. I've tried merging both services into a single Docker Compose file, but that didn't help either. I suspect it's not a port conflict, but I'm not sure what else could be going wrong. Any advice?
3 Answers
It sounds like a classic case of network misconfiguration. Double-check if both containers are trying to bind to the same ports. Even if they aren't exactly the same settings, if they're on overlapping networks, they might conflict. Try using different network settings in your Docker Compose files. A good test is to create a minimum reproduction case with just those two services to isolate the problem further.
Another thing to look into is your firewall settings. If you're running these containers on a machine with a firewall, ensure that the ports they're using are open for both local and Tailscale access. Sometimes packets can get blocked and lead to your services appearing unreachable.
Have you considered isolating the containers into different networks within Docker? This way, they won't interfere with each other. You could set them up like this in your Compose files:
```yaml
networks:
media:
tracker:
services:
speedtest-tracker:
networks:
- tracker
immich:
networks:
- media
```
It might clear up the access issues you're experiencing.

Related Questions
Can't Load PhpMyadmin On After Server Update
Redirect www to non-www in Apache Conf
How To Check If Your SSL Cert Is SHA 1
Windows TrackPad Gestures