Skip to content

Deploy Mattermost on Linux

Mattermost Server runs on any 64-bit Linux system. For production, run Mattermost and the PostgreSQL database on separate hosts. A single-host install is suitable for development and testing.

Choose an install method

<CardGrid columns={4} cards={[ { title: 'Ubuntu / Debian', description: 'Install from the signed Mattermost APT repository (deb). Recommended for Ubuntu 22.04 / 24.04 LTS and Debian — provides automatic security updates via apt.', to: '/deployment-guide/server/linux/deploy-ubuntu', }, { title: 'Red Hat (RHEL)', description: 'Install from the release tarball with manual systemd setup, including SELinux contexts. Covers RHEL, Rocky, Alma, Oracle Linux, and CentOS Stream 9+.', to: '/deployment-guide/server/linux/deploy-rhel', }, { title: 'Manual (tarball)', description: 'Install on any 64-bit Linux distribution from the release tarball. Maximum flexibility — typically chosen by advanced administrators and air-gapped environments.', to: '/deployment-guide/server/linux/deploy-tar', }, { title: 'Azure Native VM', description: 'Deploy a production-ready Mattermost stack from the Azure Marketplace, provisioned into your own Azure subscription with managed compute, database, storage, and load balancing.', to: '/deployment-guide/server/linux/deploy-azure-native-vm', }, ]} />

Before you install

The Ubuntu/Debian, Red Hat (RHEL), and manual (tarball) methods all require you to bring your own host and database:

  • A 64-bit Linux host with at least 1 vCPU and 2 GB RAM (supports up to ~1,000 users)
  • PostgreSQL 15+ — either local to the host, on a separate server, or a managed service. See Set up the database, or PostgreSQL Migration if you're moving from MySQL.
  • Inbound ports 80 and 443 (HTTPS) and 8065 (System Console). See Network ports for the full list, and Prepare for the pre-install checklist.
  • Outbound port 10025 if you'll send notification email through a relay.

The Azure Native VM method provisions its own compute, managed PostgreSQL, and storage from the Azure Marketplace — see its prerequisites instead.

After you install

Once Mattermost is running, complete these steps before exposing it to users:

:::tip Air-gapped environments If you're deploying into a network-isolated enclave, see Air-Gapped Operations instead of the connected install paths above. It covers package mirroring and the configuration changes needed on top of the standard install. :::

:::note[Troubleshooting] See Deployment troubleshooting for common install failures. :::