{"id":264,"date":"2025-08-19T07:15:42","date_gmt":"2025-08-19T07:15:42","guid":{"rendered":"https:\/\/blog.hostinger.io\/support\/2025\/08\/19\/12040815-how-to-deploy-your-first-container-with-hostinger-docker-manager\/"},"modified":"2026-04-17T07:20:23","modified_gmt":"2026-04-17T07:20:23","slug":"12040815-how-to-deploy-your-first-container-with-hostinger-docker-manager","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/support\/12040815-how-to-deploy-your-first-container-with-hostinger-docker-manager\/","title":{"rendered":"How to deploy a container with Hostinger VPS Docker manager"},"content":{"rendered":"<p><span style=\"font-weight: 400\">Deploying your first container with the Hostinger VPS Docker manager is a streamlined process that allows you to launch applications on your virtual private server in minutes. This guide walks you through the entire process&mdash;from accessing the manager within your VPS dashboard to running and maintaining your containerized applications.<\/span><\/p><h2 id=\"h-pre-requisites\"><strong>Pre-requisites<\/strong><\/h2><ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">A Hostinger VPS with a <\/span><a href=\"https:\/\/www.hostinger.com\/support\/8306612-how-to-use-the-docker-vps-template-at-hostinger\/\"><span style=\"font-weight: 400\">Docker template<\/span><\/a><span style=\"font-weight: 400\"> installed.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">A Docker Compose file or a URL to a Docker Compose repository.<\/span><\/li>\n<\/ul><h2 id=\"h-deploy-your-first-container\"><strong>Deploy your first container<\/strong><\/h2><p><span style=\"font-weight: 400\">Follow these steps to deploy your first container using the Docker Manager in hPanel.<\/span><\/p><h3><strong>Step 1 &ndash; Access the Hostinger Docker manager<\/strong><\/h3><ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Go to the <\/span><a href=\"https:\/\/hpanel.hostinger.com\/vps\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400\">VPS<\/span><\/a><span style=\"font-weight: 400\"> section on hPanel<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Select your server by clicking Manage.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Click Docker Manager in the left sidebar.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Click on Compose button<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Main options will be displayed as buttons: Compose manually, Compose from URL, One Click Deploy<\/span><\/li>\n<\/ol><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9735\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17.png\" alt=\"\" width=\"911\" height=\"370\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17.png 911w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17-300x122.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17-768x312.png 768w\" sizes=\"auto, (max-width: 911px) 100vw, 911px\" \/><\/p><h3><strong>Step 2 &ndash; Choose a deployment method<\/strong><\/h3><p><span style=\"font-weight: 400\">The Hostinger Docker manager offers three primary ways to set up your project:<\/span><\/p><ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Option 1 &ndash; Compose from URL: It allows you to deploy pre-configured applications from platforms like GitHub or GitLab. Paste the direct link to your docker-compose.yml file in the URL field.<\/span>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">The system supports GitHub, GitLab, and direct links to Docker Compose files.<\/span><\/li>\n<\/ul>\n<\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Option 2 &ndash; Compose manually: Use this if you want to write or paste your configuration directly into the editor.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Option 3 &ndash; One click deploy: Use this if you already have a specific application in mind. It will redirect you to Hostinger VPS catalog (https:\/\/www.hostinger.com\/support\/hostinger-docker-catalog-applications\/) and you will be able to select the application you want to. This would be the easiest option to use.&nbsp;<\/span><\/li>\n<\/ul><h3><strong>Step 3 &ndash; Configure the container settings<\/strong><\/h3><p><span style=\"font-weight: 400\">If you choose to compose manually, define the following parameters:<\/span><\/p><ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Project name: Enter a unique, descriptive name (e.g., my-wordpress-site).<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Container name: Give your container a unique identifier<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Image: Specify the Docker image (e.g., nginx:latest, wordpress:6.0)<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Ports: Map container ports to VPS ports using the format VPS-port:Container-port (e.g., 8080:80).<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Volumes (optional): Assign persistent storage paths to save data outside the container. (e.g., \/home\/mydata:\/var\/www\/html).<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Environment variables (optional): Add necessary configuration keys, such as NODE_ENV=production or PORT=3000.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Restart policy: Select the option from the dropdown for how the container behaves if it stops.<\/span><span style=\"font-weight: 400\">\n<p><\/p><\/span>\n<ul>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">always: Container restarts automatically<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">unless-stopped: Restarts unless manually stopped<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">on-failure: Restarts only on errors<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">no: No automatic restart<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9736\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_1.png\" alt=\"\" width=\"738\" height=\"583\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_1.png 738w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_1-300x237.png 300w\" sizes=\"auto, (max-width: 738px) 100vw, 738px\" \/><\/p><p><span style=\"font-weight: 400\">The right panel shows a live preview of your Docker Compose YAML configuration for setting verification, making quick edits and better understand the Docker Compose format.<\/span><\/p><p><span style=\"font-weight: 400\">Here&rsquo;s an example of an actual Docker Compose YAML file defining a project comprising two interconnected services: a simple web application and a Redis cache instance.<\/span><\/p><p><span style=\"font-weight: 400\">To help you understand the configuration, check the comments to see what each line does.<\/span><\/p><pre><span style=\"font-weight: 400\">services:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;web: <\/span><span style=\"font-weight: 400\"># Service for the web application<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;build: . <\/span><span style=\"font-weight: 400\"># Builds the image from the Dockerfile in the current directory<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;ports:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- <\/span><span style=\"font-weight: 400\">\"8000:5000\"<\/span> <span style=\"font-weight: 400\"># Maps host port 8000 to container port 5000<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;depends_on:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- redis <\/span><span style=\"font-weight: 400\"># Ensures 'redis' starts before 'web'<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;volumes:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- .\/:\/app <\/span><span style=\"font-weight: 400\"># Mounts the current directory into the container at \/app (bind mount)<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;environment:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REDIS_HOST: $<\/span><span style=\"font-weight: 400\">{<\/span><span style=\"font-weight: 400\">REDIS_HOST:-redis<\/span><span style=\"font-weight: 400\">}<\/span> <span style=\"font-weight: 400\"># Sets REDIS_HOST from env or defaults to 'redis'<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;redis: <\/span><span style=\"font-weight: 400\"># Service for the Redis cache<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;image: redis:<\/span><span style=\"font-weight: 400\">6<\/span> <span style=\"font-weight: 400\"># Uses the official Redis image (version 6)<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;expose:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- <\/span><span style=\"font-weight: 400\">\"6379\"<\/span> <span style=\"font-weight: 400\"># Exposes port 6379 to other services within the Docker network<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;volumes:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- redis_data:\/data <\/span><span style=\"font-weight: 400\"># Persists Redis data in a named volume<\/span>\r\n\r\n<span style=\"font-weight: 400\">volumes:<\/span>\r\n\r\n<span style=\"font-weight: 400\">&nbsp;redis_data: <\/span><span style=\"font-weight: 400\">{}<\/span> <span style=\"font-weight: 400\"># Declares the named volume for Redis data persistence<\/span><\/pre><p><span style=\"font-weight: 400\">Note that depending on your application, services, and configuration, the exact content of the YAML file varies.<\/span><\/p><p><span style=\"font-weight: 400\">If you choose to compose through URL, all you have to do is to paste valid Github, GitLab or any Docker compose file URL and give your project a name:<\/span><\/p><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9737\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_2.png\" alt=\"\" width=\"745\" height=\"281\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_2.png 745w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_2-300x113.png 300w\" sizes=\"auto, (max-width: 745px) 100vw, 745px\" \/><\/p><h3><strong>Step 4 &ndash; Deploy the container<\/strong><\/h3><ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Review the live YAML preview in the right panel to ensure the syntax is correct.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Click the Deploy button.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">The system will validate the configuration, pull the required images, and start the services. This usually takes between 30 seconds and 2 minutes.<\/span><\/li>\n<\/ol><p><span style=\"font-weight: 400\">After successful deployment, you&rsquo;ll be redirected to the project list for<\/span><a href=\"https:\/\/www.hostinger.com\/support\/hostinger-vps-how-to-manage-your-docker-projects\/\"><span style=\"font-weight: 400\"> further managing options<\/span><\/a><span style=\"font-weight: 400\">.<\/span><\/p><h3><strong>Step 5 &ndash; Access your application<\/strong><\/h3><p><span style=\"font-weight: 400\">To access your deployed application:<\/span><\/p><ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Note the port mapping from your container settings<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Open your browser and navigate to http:\/\/your-vps-ip:port, e.g.: http:\/\/123.45.67.89:8080<\/span><\/li>\n<\/ol><h3><strong>Step 6 &ndash; Deploy additional containers<\/strong><\/h3><p><span style=\"font-weight: 400\">After deploying your initial project, you can easily add more containers to your environment. This allows you to run multiple services on the same server.<\/span><\/p><ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Go to hPanel <\/span><a href=\"https:\/\/hpanel.hostinger.com\/vps\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400\">VPS<\/span><\/a><span style=\"font-weight: 400\"> &rarr; click Manage next to the server.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">On the left sidebar, select Docker Manager &rarr; Projects<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Click the Compose button located in the top-right corner of the projects list.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Select your preferred deployment method from the dropdown menu.<\/span>\n<ol>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Compose manually: Use this to paste or write a new Docker Compose configuration directly in the editor.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">Compose from URL: Use this to pull a configuration file from a remote repository.<\/span><\/li>\n<li style=\"font-weight: 400\"><span style=\"font-weight: 400\">One click deploy: Select this to access the <\/span><a href=\"https:\/\/www.hostinger.com\/support\/hostinger-docker-catalog-applications\/\"><span style=\"font-weight: 400\">Docker Catalog applications<\/span><\/a><span style=\"font-weight: 400\">.<br>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9738\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_3.png\" alt=\"\" width=\"922\" height=\"202\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_3.png 922w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_3-300x66.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/04\/2026-04-17_14-17_3-768x168.png 768w\" sizes=\"auto, (max-width: 922px) 100vw, 922px\" \/><\/span><span style=\"font-weight: 400\"><br>\n<\/span><\/li>\n<\/ol>\n<\/li>\n<\/ol><p><span style=\"font-weight: 400\">&nbsp;After completing these steps, have successfully deployed your first container using the Hostinger Docker manager. You can now scale your project by adding more containers and exploring more advanced features as you become comfortable with the platform.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deploy a Docker container on a Hostinger VPS using the Docker manager to run containerized applications efficiently<\/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-264","post","type-post","status-publish","format-standard","hentry","category-docker-manager"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/support\/12040815-how-to-deploy-your-first-container-with-hostinger-docker-manager\/","default":1}],"include_on_kodee":true,"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/264","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=264"}],"version-history":[{"count":11,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/264\/revisions"}],"predecessor-version":[{"id":9739,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/264\/revisions\/9739"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/media?parent=264"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/categories?post=264"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/tags?post=264"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}