{"id":263,"date":"2025-08-19T07:28:14","date_gmt":"2025-08-19T07:28:14","guid":{"rendered":"https:\/\/blog.hostinger.io\/support\/2025\/08\/19\/12040867-troubleshooting-common-docker-manager-issues\/"},"modified":"2025-08-19T07:28:14","modified_gmt":"2025-08-19T07:28:14","slug":"12040867-troubleshooting-common-docker-manager-issues","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/support\/12040867-troubleshooting-common-docker-manager-issues\/","title":{"rendered":"Troubleshooting common Docker manager issues"},"content":{"rendered":"<p class=\"no-margin\">While Docker manager simplifies container deployment, you might occasionally encounter issues. This guide covers the most common problems and their solutions, helping you quickly resolve deployment or runtime issues.<\/p><p class=\"no-margin\">\n<\/p><h2 id=\"h_cbad59bfe0\">How to access deployment logs<\/h2><p class=\"no-margin\">Before troubleshooting, it&rsquo;s essential to know how to access detailed deployment logs:<\/p><ol>\n<li>\n<p class=\"no-margin\">Click the <b>Browser terminal<\/b> button in the top right corner<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Navigate to your project&rsquo;s build log:<\/p>\n<pre><code>cat \/docker\/[project-name]\/.build.log<\/code><\/pre>\n<p class=\"no-margin\">Replace <code>[project-name]<\/code> with your actual project name<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Review the output for error messages or warnings<\/p>\n<\/li>\n<\/ol><p class=\"no-margin\">These logs contain valuable information about image pulling, container creation, and startup processes.<\/p><p class=\"no-margin\">\n<\/p><h2 id=\"h_ff5b23dd17\">Common deployment issues<\/h2><h3 id=\"h_f5743adcba\">Issue 1: &ldquo;Port already in use&rdquo; error<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Deployment fails with a message about port conflicts<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check which ports are in use: <\/p>\n<pre><code>sudo netstat -tlnp<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Either:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Choose a different port in your configuration<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Stop the conflicting service<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Modify your port mapping (e.g., change <code>80:80<\/code> to <code>8080:80<\/code>)<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol><h3 id=\"h_1822b27fca\">Issue 2: &ldquo;Image not found&rdquo; error<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Docker cannot pull the specified image<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Verify the image name and tag:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Correct format: <code>image:tag<\/code> (e.g., <code>nginx:latest<\/code>)<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Check for typos<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Ensure the image exists on Docker Hub or the specified registry<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">For private images, ensure authentication is configured<\/p>\n<\/li>\n<\/ol><h3 id=\"h_58517ca833\">Issue 3: Container starts but immediately stops<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Container shows as &ldquo;Exited&rdquo; or keeps restarting<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check container logs via browser terminal: <\/p>\n<pre><code>docker logs [container-name]<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Common causes:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Missing environment variables<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Incorrect startup command<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Application crashes on startup<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Verify all required environment variables are set<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Check if the application needs specific file permissions<\/p>\n<\/li>\n<\/ol><h2 id=\"h_22868786ce\">Common runtime issues<\/h2><h3 id=\"h_d9915b2789\">Issue 4: Cannot access the application via browser<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Application seems to be running, but the web browser shows a connection error<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Verify the correct port mapping:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Check if you&rsquo;re using the VPS port, not the container port<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">URL format: <code>http:\/\/your-vps-ip:vps-port<\/code><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Check firewall rules: <\/p>\n<pre><code>sudo ufw status<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Ensure the application is listening on the correct interface (0.0.0.0, not localhost)<\/p>\n<\/li>\n<\/ol><h3 id=\"h_65db774234\">Issue 5: Container running out of memory<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Container crashes with &ldquo;OOMKilled&rdquo; status or the application becomes unresponsive<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check container resource usage:<\/p>\n<pre><code>docker stats [container-name]<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Monitor VPS resources via the control panel<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Consider:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Upgrading your VPS plan<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Optimizing your application<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Setting memory limits in your compose file<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol><h3 id=\"h_ebe9837a16\">Issue 6: Persistent data lost after container restart<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Database or uploaded files disappear after container updates<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Ensure you&rsquo;ve configured volumes correctly:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Format: <code>\/host\/path:\/container\/path<\/code><\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Use absolute paths on the host<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Check volume permissions: <\/p>\n<pre><code>ls -la \/path\/to\/volume<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Verify volumes are properly mounted: <\/p>\n<pre><code>docker inspect [container-name] | grep -A 10 Mounts<\/code><\/pre>\n<\/li>\n<\/ol><h2 id=\"h_a4e83af9f5\">Configuration issues<\/h2><h3 id=\"h_72e7f2e4ab\">Issue 7: Invalid YAML syntax<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Deployment fails with parsing errors<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Use the YAML preview pane to spot issues<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Common YAML mistakes:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Incorrect indentation (use spaces, not tabs)<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Missing colons after keys<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Improper quotes around values<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Validate your YAML using online tools before deployment<\/p>\n<\/li>\n<\/ol><h3 id=\"h_76a0a6c292\">Issue 8: Environment variables not working<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Application can&rsquo;t find configuration values<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check environment variable format:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Correct: <code>KEY=value<\/code><\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">No spaces around the equals sign<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">For multi-line values, use proper YAML syntax: <\/p>\n<pre><code>environment:<br> - KEY=value<br> - MULTILINE_KEY=|<br>   line1<br>   line2<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Verify inside container: <\/p>\n<pre><code>docker exec [container-name] env<\/code><\/pre>\n<\/li>\n<\/ol><h2 id=\"h_f11c241d54\">Networking issues<\/h2><h3 id=\"h_98936dbc8b\">Issue 9: Containers can&rsquo;t communicate<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Multi-container applications fail to connect to each other<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Ensure containers are in the same compose project<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Use service names for internal communication:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">Not: <code>localhost:3306<\/code><\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Correct: <code>mysql:3306<\/code> (where <code>mysql<\/code> is the service name)<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Check if containers are on the same network: <\/p>\n<pre><code>docker network ls docker inspect [network-name]<\/code><\/pre>\n<\/li>\n<\/ol><h3 id=\"h_8ff94a588e\">Issue 10: DNS resolution problems<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Container can&rsquo;t resolve external domains<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check DNS configuration: <\/p>\n<pre><code>docker exec [container-name] cat \/etc\/resolv.conf<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Test DNS resolution: <\/p>\n<pre><code>docker exec [container-name] nslookup google.com<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Configure custom DNS servers if needed in your compose file<\/p>\n<\/li>\n<\/ol><h2 id=\"h_2e00a0f554\">Performance issues<\/h2><h3 id=\"h_f8e081ed37\">Issue 11: Slow container startup<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Containers take unusually long to start<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Check if images are cached locally: bash<\/p>\n<pre><code>docker images<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Monitor download speed during image pull<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Consider using smaller base images (e.g., <code>alpine<\/code> variants)<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Ensure your VPS has sufficient resources<\/p>\n<\/li>\n<\/ol><h3 id=\"h_f8f6fbd622\">Issue 12: Application running slowly<\/h3><p class=\"no-margin\"><b>Symptoms<\/b>: Application responds but performance is poor<\/p><p class=\"no-margin\"><b>Solutions<\/b>:<\/p><ol>\n<li>\n<p class=\"no-margin\">Monitor resource usage: bash<\/p>\n<pre><code>docker stats htop<\/code><\/pre>\n<\/li>\n<li>\n<p class=\"no-margin\">Check for:<\/p>\n<ul>\n<li>\n<p class=\"no-margin\">CPU throttling<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Memory swapping<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\">Disk I\/O bottlenecks<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li>\n<p class=\"no-margin\">Optimize your application or upgrade VPS resources<\/p>\n<\/li>\n<\/ol><h2 id=\"h_86e51c607d\">Debugging commands cheat sheet<\/h2><p class=\"no-margin\">Access these commands via the browser terminal:<\/p><pre><code># View all containers<br>docker ps -a<br><br># Check container logs<br>docker logs [container-name] --tail 50 -f<br><br># Access container shell<br>docker exec -it [container-name] \/bin\/sh<br><br># View deployment logs<br>cat \/docker\/[project-name]\/.build.log<br><br># Check system resources<br>free -h<br>df -h<br>top<br><br># Inspect container configuration<br>docker inspect [container-name]<br><br># View Docker daemon logs<br>journalctl -u docker -n 100<\/code><\/pre><h2 id=\"h_2ce6fb6f1e\">Best practices to avoid issues<\/h2><ol>\n<li>\n<p class=\"no-margin\"><b>Test locally first<\/b>: Deploy on your local machine before VPS<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\"><b>Start simple<\/b>: Begin with single containers before multi-container setups<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\"><b>Use version tags<\/b>: Specify exact versions instead of <code>latest<\/code><\/p>\n<\/li>\n<li>\n<p class=\"no-margin\"><b>Monitor resources<\/b>: Keep an eye on VPS resource usage<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\"><b>Regular backups<\/b>: Backup your volumes and configurations<\/p>\n<\/li>\n<li>\n<p class=\"no-margin\"><b>Document changes<\/b>: Keep track of what works for your setup<\/p>\n<\/li>\n<\/ol><p class=\"no-margin\">Remember, most Docker manager issues have straightforward solutions. Start with the deployment logs and work through the relevant troubleshooting steps.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Troubleshooting your Docker containers on Hostinger Docker manager<\/p>\n","protected":false},"author":581,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"include_on_kodee":true,"footnotes":""},"categories":[297],"tags":[],"class_list":["post-263","post","type-post","status-publish","format-standard","hentry","category-docker-manager"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/support\/12040867-troubleshooting-common-docker-manager-issues\/","default":1}],"include_on_kodee":true,"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/users\/581"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/comments?post=263"}],"version-history":[{"count":0,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/263\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/media?parent=263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/categories?post=263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/tags?post=263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}