After updating a container that serves a webpage, the site stopped loading in several browsers, even though it had worked previously. Browser requests eventually timed out, but curl still returned the expected HTML, and container logs showed successful HTTP 200 GET requests. The setup may include a reverse proxy, and the server recently experienced a power outage. What could cause this mismatch, and what troubleshooting steps should be tried?
4 Answers
Since curl works but browser requests time out, check the path between the browser and the container rather than the application itself. Verify reverse-proxy configuration, container network attachment, DNS, and the published port mappings. An update may have changed the container address or caused the proxy to lose access to the service.
Try clearing the browser cache and cookies, then test curl from several locations: the client machine, the Docker host, and another container. That helps determine whether the problem is browser-specific, host networking, or container-to-container communication.
Recreating the containers can fix stale network state. For a Compose deployment, bring the stack down and start it again with forced recreation, then confirm that the ports, networks, and proxy settings match the previous working setup.
The issue was ultimately fixed by reinstalling Docker and rebooting the Arch Linux server. A recent power outage may have corrupted Docker data or networking state, so the reinstall restored the affected files and services.

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