😁
User Guide
6.5
6.5
  • Rocket.Chat
  • Deploy
    • Deploy Rocket.Chat
      • System Requirements
      • Deploy with Docker & Docker Compose
      • Deploy with AWS
      • Deploy with Snaps
      • Updating Rocket.Chat
      • Scaling Rocket.Chat
        • Microservices
        • Running Multiple Instances
        • Automation Tools
          • Ansible
          • OpenShift
          • Vagrant
      • Additional Deployment Methods
        • Deploy with Kubernetes
        • Deploy with Digital Ocean
        • Deploy on Google Compute Engine
        • Deploy with Ubuntu
        • Deploy with CentOS
        • Deploy on Kali
        • Deploy on Debian
        • Deploy on IBM Cloud
        • Deploy on Windows 10
        • Plug-in Deployments
        • Unsupported Methods
          • OpenSUSE Leap 42.2
          • FreeBSD
            • Deploying Rocket.Chat Server Binaries on a FreeBSD system
          • Windows Server
          • Linode
          • Scalingo
          • Cloudron.io
          • Jelastic
          • Aliyun
          • Galaxy
          • Syncloud
          • OpenShift
  • Setup and Configure
    • Rocket.Chat Environment Configuration
      • NodeJs Configuration
      • MongoDB Configuration
        • MongoDB URI Authentication
        • MongoDB Backup and Restore
        • Passing extra options to the Mongo driver
        • Configure a replica set for MongoDB
        • Migrating database from Meteor built in MongoDB
        • MongoDB mmap to wiredTiger migration
        • Supported Mongo Versions
      • Firewall Configuration
      • Additional Configurations
        • Running in a sub folder with Apache
        • Univention Corporate Server (UCS)
        • Setting Up Client SSL Certificate Authentication for Rocket.Chat
        • Setting up Process Managers and Init Systems
      • Configuring SSL Reverse Proxy
      • Environment Variables
    • Installing Client Apps
      • Desktop & Mobile Apps
      • Minimum Requirements for Client Apps
    • Enterprise License Application
    • Accessing Your Workspace
      • Rocket.Chat Setup Wizard
      • Admin Account Creation
      • Basic White-labeling
      • Inviting Users
    • Advanced workspace management
      • Authentication
        • OpenID Connect
          • Gluu Server 4.0
          • Keycloak
          • Okta Identity Cloud Service
        • iframe based Single Sign On
      • Google Translate Integration
      • Managing Settings Using Environmental Variables
      • Identity Management (EE vs CE)
      • Database Migration
      • Restoring an Admin User
      • CDN
      • Troubleshooting
      • Client Compatibility Matrix
    • Enterprise Edition Trial
    • Rocket.Chat Air-gapped Deployment
      • Offline Workspace Registration
      • Offline License
      • Air-gapped workspace Configuration
      • Air-gapped App Installation
    • Roles in Rocket.Chat
  • Use Rocket.Chat
    • User Guides
      • Access your workspace
      • Main Menu
      • User Panel
        • My Account
          • Manage Devices
      • Rooms
        • Channels
          • Create a new Channel
          • Edit A Channel
          • Manage Channel Members
          • Search Messages in a Channel
        • Teams
          • Create a new Team
          • Edit a Team
          • Manage Team Members
          • Manage Team Channels
          • Teams Enterprise Edition
        • Discussions
          • Create a new Discussion
          • Edit A Discussion
          • Search Messages in Discussion
          • Manage Discussion Members
        • Direct Messages
          • Create a new Direct Message
          • Direct Message Actions
        • Threads
          • Create a New Thread
        • Room Roles
      • Messages
        • Message Actions
        • Off-the-record (OTR) Messaging User Guide
      • Notifications
      • Security Bundle
        • Data Loss Prevention User Guide
        • Antivirus ClamAV App
        • End to End Encryption User Guide
        • Two Factor Authentication User Guide
      • Keyboard Shortcuts
    • Workspace Administration
      • Go Fully Featured
      • Workspace
      • Registration
      • Engagement
      • Moderation
      • Federation
      • Rooms
      • Users
        • Guest users
        • Add users through Identity management and authentication services
      • Invites
      • User Status
      • Permissions
        • Setting's Permission
      • Device Management
      • Email Inboxes
      • Mailer
      • Third-party Login
      • Integrations
        • AppVeyor
        • Azure Alerts
        • BitRocket
        • Dead Simple Screen Sharing
        • EasyRedmine
        • Giphy Integrations
        • GitLab
        • Google Calendar
        • GitHub
        • Graylog
        • Jenkins notifications via Rocket.Chat Marketplace
        • JFrog Xray
        • MicroBadger
        • Microsoft Teams
        • NewRelic
        • Nextcloud and WebDAV integrations
        • Nextcloud Rocket.Chat App
        • Nixstats notification
        • PagerDuty
        • Prometheus
        • Grafana
        • Review Board
        • RunDeck Job Notifications
        • Sentry
        • Simple Telegram Bot
        • TravisCI
        • Uptime Robot
        • Zapier
        • django-rocketchat-auth 1.2
        • Add Jira notifications via webhook
      • Import
        • Import from HipChat
        • Import from Slack
          • SlackBridge
        • Import CSV
      • Logs
      • Sounds
      • Emoji
      • Settings
        • Accounts
          • Custom Fields
        • Analytics
        • Assets
        • Bots
        • CAS
        • Conference Call
        • Custom Emoji Filesystem
        • Custom Sound Filesystem
        • Device management settings
        • Discussion
        • E2E Encryption
        • Email
          • Edit your Email Content
          • Direct email reply
          • Email configuration
        • Enterprise
        • Federation
          • Matrix Bridge
            • Matrix Admin Guide
              • Matrix Homeserver Setup
                • Matrix Allow/Block List
              • Matrix Bridge Configuration
            • Matrix User's Guide
              • Create federated rooms
              • Invite external users to your Rocket.Chat server
              • Communicate with a federated user
              • Search and join public channels on the Matrix network
              • Assign roles for users in federated rooms
            • Matrix Bridge FAQs
          • Rocket.Chat Basic Federation
            • Cross-server Federated Channels
        • File Upload
          • Minio
          • Recommendations for File Upload
          • File Upload FAQs
        • General
          • Net Promoter Score (NPS) survey
        • IRC Federation
        • Layout
        • LDAP
          • LDAP Connection Setting
          • LDAP User Search
          • LDAP Data Sync Settings
          • LDAP Enterprise Settings
          • LDAP Examples
        • Logs
        • Message
        • Meta
        • Mobile
        • OAuth
          • Facebook OAuth Setup
          • Google OAuth Setup
          • GitLab OAuth Setup
          • GitHub OAuth Setup
          • GitHub Enterprise OAuth Setup
          • LinkedIn OAuth Setup
          • NextCloud OAuth Setup
          • WordPress OAuth Setup
          • MS Office 365 OAuth Setup
          • Other OAuth Setup
        • Omnichannel Admin's Guide
          • Queue Types (Routing Algorithm)
        • OTR
        • Outlook Calendar
        • Push
        • Rate Limiter
        • Retention Policy
        • SAML
          • Rocket.Chat server settings
          • Simple SAML php
          • Active Directory Federation Services
          • Oracle Identity Cloud Service
          • Keycloak
        • Search
        • Setup Wizard
        • SlackBridge
        • Smarsh
        • SMS
        • Threads
        • Troubleshoot
        • User Data Download
        • Voice Channel
        • Webdav Integration
        • WebRTC
    • Omnichannel
      • Current Chats
      • Reports
      • Analytics
      • Real-time Monitoring
      • Managers
      • Agents
      • Departments
      • Custom Fields
      • Livechat Triggers
      • Livechat Widget Installation
      • Livechat Widget Appearance
      • Webhooks
      • Business Hours
      • Monitors
      • Units
      • Canned Responses
        • Canned Responses Omnichannel Manager's Guide
      • Tags
      • SLA Policies
      • Priorities
    • Message Auditing
      • Review All Message Auditing Panel Search Results
      • Check Historical Edits and Deletions of Messages
      • Assign Message Auditing Permissions to Specific Users
    • Message Auditing Log
    • Rocket.Chat Cloud
      • Create your new cloud account
      • Manage your cloud account
        • Custom domain for your Cloud-hosted workspace
        • Profile
        • Organization Settings
        • Workspaces
        • Invoices
        • Payment Methods
        • Support
        • Security
        • Contact Sales
      • Cloud Account Setup Wizard
    • Rocket.Chat Voice Channel
      • Getting Started with Voice Channel
      • Voice Channel Admin Guide
        • Configure without previously having a PBX server
          • SIP Extensions
          • Configure asterisk manager interface and users
        • Configure with an active PBX server
          • Associate agents with extensions in Rocket.Chat
      • Voice Channel Technical Specification
      • Voice Channel Agent Guides
        • How to make myself available to accept calls?
        • How to take a call in Rocket.Chat voice channel?
        • How to initiate an outbound call as an agent?
      • Voice Channel FAQs
    • Rocket.Chat Conference Call
      • Conference Call Admin Guide
        • Pexip app
        • Jitsi app
        • BigBlueButton (BBB) app
        • Google Meet app
      • Conference Call User's Guide
      • Omnichannel Video/Audio Call Configuration
    • Rocket.Chat Federation
    • Rocket.Chat Mobile
      • Rooms on Rocket.Chat Mobile
      • Messages and Threads on Mobile
      • Push Notifications
        • Secured Push Notification
        • Push Notifications User Guide
    • Omnichannel Agent's Guides
      • Omnichannel Conversation
      • Omnichannel Queue
      • Omnichannel Contact Center
        • Omnichannel Contact Manager Assignment
      • Email Inboxes
  • Extend Rocket.Chat Capabilities
    • Rocket.Chat Marketplace
      • Rocket.Chat Public Apps Guides
        • Omnichannel Apps
          • SMS
          • Telegram App
            • Telegram Agent's Guide
          • Rasa App
          • Salesforce CRM Integration
            • Salesforce CRM Agent's Guide
          • HubSpot CRM
            • HubSpot CRM Agent's Guide
          • Dialogflow App
            • Upload File To Ongoing Dialogflow Chats
          • Twitter App
            • Twitter App Agent's Guide
          • Facebook App
            • Facebook App Agent's Guide
          • WhatsApp
            • WhatsApp Agent's Guide
          • WhatsApp Sandbox
            • WhatsApp Sandbox Agent's Guide
          • Instagram Direct
            • Instagram Direct Agent's Guide
          • WhatsApp Cloud App
            • Configure Whatsapp Cloud App
            • Using WhatsApp Cloud App
        • Atlassian Apps
          • Jira Server v2.0
          • Bamboo Integration
          • Bitbucket Server
          • Confluence Server
          • Jira Server
        • Pexip App
        • Jitsi app
        • BigBlueButton (BBB) app
        • Google Meet app
        • Trello
          • Using the Trello App
        • Zoom
          • Install Zoom App
        • Data Loss Prevention (DLP) App
        • Poll
        • Poll Plus
          • Poll Plus Features
        • Microsoft Teams Bridge
          • Using Microsoft Teams Bridge
        • GitHub App
          • Using GitHub App
        • Google Drive
          • Using the Google Drive App
        • Google Calendar
          • Using the Google Calendar App
        • Zapier App
          • Install Zapier App
          • Using Zapier App
        • ChatGPT App
          • Install ChatGPT App
          • Using ChatGPT App
      • App Storage Location
    • Integrations
    • Rocket.Chat API
  • Resources
    • Frequently Asked Questions
      • Accessing your workspace FAQs
      • My Account FAQs
      • Registration
      • Message Privacy
      • Localization
      • Apps FAQs
      • Update FAQs
      • WhatsApp Cloud API FAQs
      • Cloud FAQs
      • Support FAQs
      • Whatsapp Business App FAQs
      • Identity Management EE FAQ
      • Deployment FAQ
        • Updating Rocket.Chat FAQ
        • Snaps FAQ
      • Omnichannel FAQs
    • Brand and Visual Guidelines
      • Logo
      • Typography
      • Colors
      • Patterns
      • Iconography
      • Photos
      • Brand Usage Examples
      • Media Kit
    • Development Docs
    • Rocket.Chat's Support Structure
      • Enterprise Support and Version Durability
        • Enterprise Support Plans
      • Community Resources
      • Legacy Support
  • Contribute to Rocket.Chat
    • Contributor Code of Conduct
    • How Can I Help?
    • Github Sponsorship
    • Annual Contribution Programs
  • PRIVACY AND SECURITY
    • Privacy and Security Policies
      • Rocket.Chat Privacy Policy
        • Subprocessors
      • Privacy Policy Facebook Messenger
      • Security Policy
    • Security Center
      • Compliance Resources and Certifications
      • Security fixes and updates
        • cve-2022-32211
      • End-to-End Encryption Specifications
    • Privacy Center
      • GDPR
        • Data Processing Agreement
      • LGDP
        • Nomeação do Encarregado pelo Tratamento de Dados Pessoais
  • LEGAL AND COMPLIANCE
    • Rocket.Chat Terms
      • Terms of Service
        • Cloud Deployment Terms/Cloud Terms
      • Master Services Agreement for Self Managed Workspaces
      • Supplemental Terms
        • Master Service Agreement for Professional Services
    • Compliance Center
      • DMCA Policy
      • Law Enforcement
        • Guidelines for Law Enforcement
        • Censorship and Harmful Content
        • Server Lookup
      • Code of Conduct: Services
    • Legal Center
Powered by GitBook
On this page
  • Preparation Steps
  • Deploy Rocket.Chat on Docker
  • Rocket.Chat Docker Images
  • Updating Rocket.Chat on Docker
  • Enable HTTPs
  • Docker Mongo Backup and Restore
  1. Deploy
  2. Deploy Rocket.Chat

Deploy with Docker & Docker Compose

PreviousSystem RequirementsNextDeploy with AWS

Rocket.Chat 6.0 is our most secure and scalable version yet. It includes 10 security patches, 9 brand-new features, and 25+ overall platform enhancements. Visit our to learn more about what’s new in this latest version. !

Deploying Rocket.Chat with Docker and Docker Compose is a straightforward and highly recommended deployment method due to its simplicity and flexibility. This guide will walk you through the essential steps, whether you're a seasoned Docker expert or new to containerization, ensuring a smooth deployment for your Rocket.Chat workspace.

In this guide, you'll learn how to:

Preparation Steps

Installing Docker and Docker Compose

  • Ensure you have and (v2 is required) installed and operational. If you don't have them installed, you can conveniently set them up using Docker's official helper script:

curl -L https://get.docker.com | sh
  • To run Docker commands without using sudo, add the current user to the Docker group and then reboot using the following commands:

sudo usermod -aG docker $USER
sudo reboot

Deploy Rocket.Chat on Docker

Fetching Compose file

curl -L https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/master/compose.yml -O

Editing Environment Variables

Modifying the configurations in the compose file directly is strongly discouraged. Instead, use environment variables. You can set environment variables using a .env file.

Remember to uncomment the variables you are updating in the .env file.

cp env.example .env
  • Set the RELEASE variable in the .envto your desired Rocket.Chat version.

  • Edit ROOT_URL from the default http://localhost:3000 to match your domain name or IP address.

  • If you have a registration token to register the workspace automatically, you can add it to the .env file like this:

REG_TOKEN={your token here}
  • If you are using MongoDB Atlas as the database provider, edit the value of the MONGO_URL variable in your compose file to be your connection string in this format:

MONGO_URL=mongodb://<user>:<pass>@host1:27017,host2:27017,host3:27017/<databaseName>?replicaSet=<replicaSet>&ssl=true&authSource=admin
  • Now, start up the container by executing this command:

docker compose up -d

This command will:

  • Start a MongoDB service named mongodb.

  • Start a service rocketchat, which will also wait for mongodb to be ready.

Start & Stop Docker Compose

To stop your workspace from running, execute this command:

docker compose down

To start your docker-compose container, run this command:

docker compose up -d

To see the log/status of your Rocket.Chat container, execute this command:

docker compose logs -f rocketchat

Rocket.Chat Docker Images

Official image (stable and tested)

docker pull registry.rocket.chat/rocketchat/rocket.chat

Latest Release Image

This is an image that holds the latest stable Rocket.Chat updates on the docker repository. The release may be from the develop or master branch.

docker pull registry.rocket.chat/rocketchat/rocket.chat:latest

Preview Image

The Rocket.Chat preview image deploys a container with a database inside. It's useful for quickly trying or running tests, not requiring a dedicated database installation.

Specific Release Image

docker pull registry.rocket.chat/rocketchat/rocket.chat:<release-tag>

Bleeding-edge untested develop build image

This is an image maintained at Rocket.Chat's docker repository was updated from the develop (untested) branch, containing the latest updates for those who want to work with the newest features.

docker pull registry.rocket.chat/rocketchat/rocket.chat:develop

Updating Rocket.Chat on Docker

Using Docker & Docker compose, you can update your rocketchat docker image to the latest or preferred version of Rocket.Chat.

To update your Rocket.Chat version,

Changing version in .env
RELEASE=<desired version>
Changing version in compose.yml
services:
  rocketchat:
    image:registry.rocket.chat/rocketchat/rocket.chat:<desired version>
  • For the latest version, use latest as the RELEASE variable in the .env file. Alternatively, you can pull the Rocket.Chat image directly with the latest tag with this command:

docker pull registry.rocket.chat/rocketchat/rocket.chat:latest
  • Now, stop, remove and restart the existing container with these commands:

docker compose stop rocketchat
docker compose rm rocketchat
docker compose up -d rocketchat

See Rocket.Chat Docker Images for more details on Rocket.Chat docker images.

Enable HTTPs

You can secure your Rocket.Chat docker instance with TLS certificates from Let's Encrypt. Using Traefik as a reverse proxy, the certificates are automatically generated, enabling safe access to your Rocket.Chat instance via HTTPS on your specified domain.

To get HTTPS, ensure the correct A record (optionally CNAME) is set for your domain going to your server IP.

    • LETSENCRYPT_EMAIL: Your required email for the TLS certificates.

    • DOMAIN: Your domain or subdomain name only. Avoid adding https:// or any trailing slashes. Confirm that this domain resolves to the server IP address.

    • BIND_IP: Set to 127.0.0.1 .

LETSENCRYPT_EMAIL= # your email, required for the tls certificates
# set this to your domain name or subdomain, not trailing slashes or https://, just the domain
# make sure it actually resolves to your droplet ip
DOMAIN= 
RELEASE= # pin the rocketchat version, at the time of writing, prefer 6.0.0
ROOT_URL= # set this to https://${DOMAIN} replace ${DOMAIN} with the actual domain
BIND_IP=127.0.0.1
  • Download the traefik template by running the following command:

curl -LO \
    https://raw.githubusercontent.com/RocketChat/Docker.Official.Image/master/traefik.yml
  • Recreate the existing Rocket.Chat container

docker compose up -d rocketchat --force-recreate
  • Star traefik

docker compose -f traefik.yml up -d

Wait for the TLS certificates to generate and Rocket.Chat to restart. Then, access your Rocket.Chat instance securely at https://your-domain.com, using the actual domain name you configured.

Docker Mongo Backup and Restore

To back up your MongoDB database in docker,

  • Run the following command on your terminal to list out all running containers:

docker ps -a

Take note of your mongo container name.

  • Run this command to dump the database into a binary file db.dump

docker exec <container_name> sh -c 'mongodump --archive' > db.dump

When successful, you should see db.dump file in the current directory.

To restore the backup, run the following command:

docker exec -i <container_name> sh -c 'mongorestore --archive' < db.dump

You can export your database dump directly to MongoDB Atlas by simply running

mongorestore --uri mongodb+srv://<user>:<password>@cluster0.w2btl.mongodb.net --archive=db.dump

Navigate to your preferred directory and create a docker-compose.yml file following . Alternatively, you can use the curl command to download the example docker-compose.yml file by executing this command:

In your project directory, create an .env file following .

If you cloned the , you can copy the .env.example to .env with this command:

See our and Keeping the default release aslatest is not recommended.

MongoDB ensures continuous 24 x 7 operations and live backup, reducing the need for frequent restarts. Refer to the for proper server operation and management. Optionally, manage messages and configurations by uncommenting the volume mounts, and ensuring a data subdirectory is available for data storage and mounting.

Once the container is running, visit http://localhost:3000 on your browser. You can now explore your Rocket.Chat workspace and .

The is responsible for maintaining and controlling Rocket.Chat's official stable image through Docker. It is also reviewed by the Docker committee.

You can set up your Rocket.Chat workspace with a specific image. Select the release you need from the and use it to run the following command:

Before you proceed, see the .

Updating the Rocket.Chat image doesn't affect your data since it exists in the Mongo image. Ensure that the version of your MongoDB is compatible with the intended before proceeding with the update.

For a specific version, modify the RELEASE variable in the .env file to point to the of that version. Alternatively, you can edit the compose.yml file to point to the desired Rocket.Chat version.

In the file, change the RELEASE value to your specified version.

In the file, change the rocketchat service image value to point to an image in the rocketchat registry image with a of your desired version.

Update the following variables in your .env file. If you don't have one, create a .env file following .

RELEASE : Your preferred Rocket.Chat release. See the to know more about our releases.

DOMAIN : Set the value to "," replacing "your-domain.com" with the domain name you want to use.

Congratulations on successfully deploying Rocket.Chat using Docker! You can now communicate effortlessly with your team members on your workspace. Visit the to configure your workspace and onboard other team members.

website
Update now
Install Docker and Docker Compose
Deploy Rocket.Chat on Docker
Update Rocket.Chat on Docker
Enable HTTPs with Docker deployment
Backup and Restore Docker Mongo
Docker
Docker-compose
our example
this example
GitHub repository
releases page
available docker images.
MongoDB documentation
invite other users
Official Docker Images Repository
release
docker hub tags
general guidelines for updating Rocket.Chat
release
docker image tag
.env
compose.yml
tag
our example
releases page
https://your-domain.com
accessing your workspace guide
Docker Hub
Logo