Knowledge Base

Rocket.Chat

Updated 26 May 2026

Quick Docker Setup

bash
docker pull rocket.chat
docker run --name db -d mongo:latest --replSet rs0 --oplogSize 128
docker exec -ti db mongosh --eval "printjson(rs.initiate())"
docker run --name rocketchat -p 80:3000 --link db \
  --env ROOT_URL=http://chat.mydomain.local \
  --env MONGO_OPLOG_URL=mongodb://db:27017/local -d rocket.chat

Add the container IP to /etc/hosts, then access at http://chat.mydomain.local.

Docker Compose

Create a .env file:

bash
.env
ROOT_URL=http://chat.mydomain.local:3000

Use a compose file with Rocket.Chat 7.3.0 and MongoDB 6.0.13, defining separate volumes for app data and database, and isolated proxy/backend networks.

Wizard Bypass

The setup wizard may hang on step 4/4. Fix via MongoDB:

bash
mongosh
use rocketchat
db.rocketchat_settings.updateOne(
  {"_id":"Show_Setup_Wizard"},
  {$set: {"value": "completed"}}
);

Database Management

bash
# Reset user password (bcrypt hash)
db.users.updateOne({username: "admin"}, {$set: {bcrypt: "<hash>"}})
 
# Disable 2FA
db.users.updateOne({username: "admin"}, {$unset: {"services.totp": 1}})
 
# Assign role
db.users.updateOne({username: "admin"}, {$addToSet: {roles: "admin"}})