Production Docker Deployment

Deploy Mattermost using a multi-node production configuration using Docker Compose. Docker Compose experience recommended.

For a single-node preview of Mattermost (without email) see Local Machine Setup using Docker.

If you have any problems installing, see the troubleshooting guide. To submit an improvement or correction, click Edit at the top of this page.

Production Docker Setup on Ubuntu

  1. Install Docker using the Ubuntu online guide or these instructions:

    sudo apt-get update
    sudo apt-get install wget
    wget -qO- https://get.docker.com/ | sh
    sudo usermod -aG docker <username>
    sudo service docker start
    newgrp docker
    
  2. Install Docker Compose using the online guide. You have to download the latest release from Docker Compose Github’s page and put the binary on your /usr/local/bin folder. Usually, you can use the following command, replacing $dockerComposeVersion by the Docker Compose version to install :

    curl -L https://github.com/docker/compose/releases/download/$dockerComposeVersion/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    sudo chmod +x /usr/local/bin/docker-compose
    
  3. Deploy the Mattermost Production Docker setup by running:

    git clone https://github.com/mattermost/mattermost-docker.git
    cd mattermost-docker
    docker-compose build
    mkdir -pv ./volumes/app/mattermost/{data,logs,config}
    chown -R 2000:2000 ./volumes/app/mattermost/
    docker-compose up -d
    
  4. Configure TLS by following the instructions

  5. Configure Email by following the SMTP email setup guide

  6. (Optional) to enable enterprise features under System Console > Edition and License upload your trial license or subscription license file received via email.

  7. Configure your server based on configuration settings documentation

Additional Guides:

Production Docker Setup on Arch Linux

To install on Arch Linux, see the installation guide on the Arch Linux wiki.

Production Docker Setup on macOS

You can run a production deployment on macOS by installing Docker Compose using the online guide then following the above instructions.

Other options:

To install Mattermost Team Edition instead of Mattermost Enterprise Edition, open docker-compose.yaml and comment out the following line:

dockerfile: Dockerfile-enterprise