{"id":279,"date":"2025-07-22T13:16:00","date_gmt":"2025-07-22T13:16:00","guid":{"rendered":"https:\/\/blog.hostinger.io\/support\/2025\/07\/22\/11823362-how-to-install-icewarp-epos-on-hostinger-vps\/"},"modified":"2026-07-21T10:45:48","modified_gmt":"2026-07-21T10:45:48","slug":"11823362-how-to-install-icewarp-epos-on-hostinger-vps","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/support\/11823362-how-to-install-icewarp-epos-on-hostinger-vps\/","title":{"rendered":"How to install IceWarp EPOS on Hostinger VPS"},"content":{"rendered":"<p class=\"no-margin\"><a class=\"intercom-content-link\" href=\"https:\/\/www.icewarp.com\/\" target=\"_blank\" rel=\"noopener\">IceWarp<\/a> EPOS is a full-featured mail and collaboration platform that you can install on your Hostinger VPS using Docker. This article will guide you through the process of deploying IceWarp in a containerized environment, using Docker Compose and environment variables for configuration.<\/p><h2 id=\"h_7535e5e123\"><b>Prepare your VPS and system requirements<\/b><\/h2><p class=\"no-margin\">Before you begin, make sure your Hostinger VPS meets the basic resource recommendations. For up to 10 users, allocate at least <b>2 vCPUs and 4 GB of RAM<\/b>. If you expect more users or heavy usage (e.g., desktop sync clients), scale accordingly &mdash; IceWarp supports setups with 8+ vCPUs and 20+ GB RAM for larger deployments<\/p><div class=\"intercom-interblocks-callout\" style=\"background-color: #e3e7fa80;border-color: #334bfa33\">\n<p class=\"no-margin\">Ensure your VPS is running a Hostinger VPS Docker template.<\/p>\n<\/div><h2 id=\"h_999bc33ed8\"><b>Download the example Docker compose file<\/b><\/h2><p class=\"no-margin\">Next, prepare your docker-compose.yml configuration file. IceWarp provides a reference file structure that includes all the services you&rsquo;ll need &mdash; IceWarp, MariaDB, Redis, and Laforge (the thumbnail preview service). You can copy their official example and adjust it for your use case:<\/p><pre><code>version: \"3.9\"\r\n\r\nservices:\r\n  icewarp:\r\n    image: ${ICW_IMAGE_VERSION:-icewarptechnology\/icewarp-server:latest}\r\n    platform: ${ICW_IMAGE_PLATFORM:-linux\/amd64}\r\n    command:\r\n      - \"\/usr\/bin\/supervisord\"\r\n      - \"--nodaemon\"\r\n      - \"-c\"\r\n      - \"\/data\/supervisord\/supervisord.conf\"\r\n    volumes:\r\n      - iwserver-data:\/data\r\n      - iwserver-cache-bash-history:\/commandhistory\r\n    environment:\r\n      LICENSE_ORDERID: \"${LICENSE_ORDERID}\"\r\n      ICW_DOMAIN: ${ICW_DOMAIN}\r\n      ADMIN_ACCOUNT_PASS: ${ADMIN_ACCOUNT_PASS}\r\n      ADMIN_ACCOUNT_USER: ${ADMIN_ACCOUNT_USER:-admin}\r\n      PUBLICHOSTNAME: ${PUBLICHOSTNAME}\r\n      PUBLICIP: ${PUBLICIP:-}\r\n      LOCALIP: ${LOCALIP:-}\r\n      DNSSERVER: ${DNSSERVER:-}\r\n      PREVIEWURL: ${PREVIEWURL:-http:\/\/laforge:25791}\r\n      MARIADB_HOST: mariadb\r\n      MARIADB_ROOT_USER: ${MARIADB_ROOT_USER:-root}\r\n      MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}\r\n      REDIS_HOST: tcp:\/\/redis:6379\r\n    ports:\r\n      - \"25:25\/tcp\" # SMTP\r\n      - \"80:80\/tcp\" # HTTP\r\n      - \"110:110\/tcp\" # POP3\r\n      - \"143:143\/tcp\" # IMAP\r\n      - \"443:443\/tcp\" # HTTPS\r\n      - \"465:465\/tcp\" # SMTPS\r\n      - \"587:587\/tcp\" # SMTP\r\n      - \"993:993\/tcp\" # IMAPS\r\n      - \"995:995\/tcp\" # POP3S\r\n      - \"1080:1080\/tcp\" # SOCKS\r\n      - \"5060:5060\/udp\" # SIP\r\n      - \"5060:5060\/tcp\" # SIP\r\n      - \"5061:5061\/udp\" # SIP\r\n      - \"5222:5222\/tcp\" # XMLL\r\n      - \"5223:5223\/tcp\" # XMPP TLS\r\n      - \"5269:5269\/tcp\" # Groupware\r\n    depends_on:\r\n      - mariadb\r\n      - redis\r\n\r\n  laforge:\r\n    image: ${LAFORGE_IMAGE_VERSION:-icewarptechnology\/laforge:2.0.3}\r\n    environment:\r\n      LAFORGE_SERVER_HTTP_LISTEN: ${LAFORGE_SERVER_HTTP_LISTEN:-:25791}\r\n    ports:\r\n      - \"25791:25791\/tcp\"\r\n\r\n  mariadb:\r\n    image: ${MARIADB_IMAGE_VERSION:-docker.io\/library\/mariadb:10.6}\r\n    environment:\r\n      MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}\r\n    volumes:\r\n      - iwserver-mariadb:\/var\/lib\/mysql\r\n\r\n  redis:\r\n    image: ${REDIS_IMAGE_VERSION:-docker.io\/library\/redis:6}\r\n    command: \"--appendonly yes\"\r\n    volumes:\r\n      - iwserver-redis:\/data\r\n\r\nvolumes:\r\n  iwserver-cache-bash-history:\r\n  iwserver-data:\r\n  iwserver-mariadb:\r\n  iwserver-redis:<\/code><\/pre><h2 id=\"h_36c1288804\"><b>Create the environment configuration file<\/b><\/h2><p class=\"no-margin\">To securely configure your IceWarp environment, create a file named icewarp.env. This file will hold your essential environment variables, such as your license key, admin credentials, and domain name.<\/p><p class=\"no-margin\">Here&rsquo;s a minimal example:<\/p><pre><code># mandatory options\r\n# -----------------\r\n\r\n# IceWarp license key\r\nLICENSE_ORDERID=\"CHANGE_ME\"\r\n# MariaDB password\r\nMARIADB_ROOT_PASSWORD=test1\r\n# Precreated domain\r\nICW_DOMAIN=mydomain.net\r\n\r\n# strongly recommended\r\n# --------------------\r\n# Precreated administrator account password, default username is admin\r\nADMIN_ACCOUNT_PASS=Testingpassword1\r\n# MX domain\r\nPUBLICHOSTNAME=mail.mydomain.net\r\n# Configure Let&rsquo;s Encrypt certificate for PUBLICHOSTNAME\r\nCREATE_CERT=\"1\"<\/code><\/pre><p class=\"no-margin\">Save this file in the same directory as your docker-compose.yml.<\/p><h2 id=\"h_782855d196\"><b>Deploy IceWarp using Docker compose<\/b><\/h2><p class=\"no-margin\">From the directory where your Docker files are saved, run the following command:<\/p><pre><code>docker-compose --env-file icewarp.env -f docker-compose.yml up -d<\/code><\/pre><p class=\"no-margin\">Docker will begin pulling necessary containers (MariaDB, Redis, Laforge) and start the IceWarp services.<\/p><h2 id=\"h_ce64aa6d2c\"><b>Access your IceWarp web interface<\/b><\/h2><p class=\"no-margin\">Once setup is complete, your IceWarp EPOS instance is running.<\/p><p class=\"no-margin\">To access it, use the<b> IP address<\/b> of your VPS.<\/p><p class=\"no-margin\">Log in with the credentials you specified in the icewarp.env file.<\/p><p class=\"no-margin\">For more detailed IceWarp configuration options, advanced architecture planning, or multi-user scaling scenarios, refer to IceWarp&rsquo;s official <a class=\"intercom-content-link\" href=\"https:\/\/support.icewarp.com\/hc\/en-us\/articles\/16576996201745\" target=\"_blank\" rel=\"noopener\">Architecture Guide<\/a> or reach out to their support team.<\/p><p class=\"no-margin\">\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Step by step guide on how to install IceWarp on a VPS<\/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":[199],"tags":[],"class_list":["post-279","post","type-post","status-publish","format-standard","hentry","category-vps-management"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/support\/11823362-how-to-install-icewarp-epos-on-hostinger-vps\/","default":1}],"include_on_kodee":true,"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/279","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=279"}],"version-history":[{"count":1,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/279\/revisions"}],"predecessor-version":[{"id":12712,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/279\/revisions\/12712"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/media?parent=279"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/categories?post=279"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/tags?post=279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}