linux

rocket chat安裝

docker pull mongo
docker run -v /home/josh/db:/data/db --name db -d mongo --replSet rs0 --oplogSize 128
docker exec -it db mongosh
	rs.initiate()


docker pull rocket.chat
docker run --name rocketchat -p 80:3000 --link db --env ROOT_URL=http://10.3.101.101 --env MONGO_OPLOG_URL=mongodb://db:27017/local -d rocket.chat
docker update --restart=always CONTAINER_ID1 CONTAINER_ID2

版本2

docker run -v /home/josh/db:/data/db --name db -d mongo --replSet rs01
docker exec -it db mongosh
rs.initiate()

docker run --name rocketchat -p 80:3000 --link db --env ROOT_URL=http://10.3.101.101 --env MONGO_OPLOG_URL=mongodb://db:27017/local?replSet=rs01 -d rocket.chat

版本3 (參考官方指令)
https://github.com/RocketChat/Docker.Official.Image/blob/cc14a45a22b8cd668222e29061dfc33274a5572c/compose.yml

docker pull docker.io/bitnami/mongodb

#一定要做,不然沒有權限,就GG了
chmod 777 /var/mongodb

docker run --name mongodb \
-v /var/mongodb:/bitnami/mongodb \
-e MONGODB_REPLICA_SET_MODE=primary \
-e MONGODB_REPLICA_SET_NAME=rs0 \
-e ALLOW_EMPTY_PASSWORD=yes \
-d bitnami/mongodb:latest
#登入測試用,可不用
docker exec -it mongodb mongosh
docker pull registry.rocket.chat/rocketchat/rocket.chat:latest

docker run --name rocketchat \
-p 80:3000 \
--link mongodb \
-e ROOT_URL=http://10.3.101.101 \
-e MONGO_URL=mongodb://mongodb:27017/rocketchat?replicaSet=rs0 \
-e MONGO_OPLOG_URL=mongodb://mongodb:27017/local?replicaSet=rs0 \
-d registry.rocket.chat/rocketchat/rocket.chat

#優化設定

http://10.3.101.101/admin/settings/Accounts
●允許變更姓名–>關閉
●允許用戶變更使用者名稱–>關閉
●允許更改電子郵件–>關閉
●允許隱形狀態選項–>關閉
●2步驟驗證–>啟用兩階段驗證–>關閉
●註冊–>註冊表單–>停用
●註冊–>邀請網址類型–>直接

http://10.3.101.101/admin/settings/General
●網站名稱:TSC IM
●網址:http://10.3.101.101
●NPS–>启用 NPS 问卷调查–>關閉
●報告–>傳送統計資料至 Rocket.Chat–>關閉
●時區–>自訂時區

http://10.3.101.101/admin/settings/Layout
●使用者介面–>顯示角色–>關閉
●使用者介面–>使用真實姓名–>關閉
●使用者介面–>使用全名縮寫來生成預設頭像–>開啟
●使用者介面–>允許 Room 名稱中的特殊字元–>開啟

http://10.3.101.101/admin/settings/LDAP
用戶DN

CN=ldap,OU=TSCS_User,OU=TSCS,DC=tgenergy,DC=com,DC=tw

基準DN

OU=TSCS_User,OU=TSCS,DC=tgenergy,DC=com,DC=tw

過濾

(&(objectclass=person)(company=TSC)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

合併現有使用者:打開

唯一標識欄位

sAMAccountName

名稱欄位

displayName

id同步username

docker exec -i mongodb mongosh < mongo.sh > /dev/null 2>&1
use rocketchat;

db.users.aggregate([
  {
    $match: {
      $expr: { $ne: ["$_id", "$username"] }
    }
  }
]).forEach(function(doc) {


  db.rocketchat_subscription.updateMany(
    { "u._id": doc._id },
    { $set: { "u._id": doc.username } }
  );

  db.users.updateOne(
    { _id: doc._id },
    { $unset: { "services.resume.loginTokens": 1 } }
  );

  db.users.deleteOne({ _id: doc._id });
  doc._id = doc.username;
  delete doc.services.resume.loginTokens;
  db.users.insertOne(doc);

});

#樣式調整
http://chat.tscs.com.tw:3000/admin/settings/Layout

自訂 CSS

.rcx-box.rcx-box--full.rcx-sidebar-footer {
  display: none;
}

main > div > .rc-scrollbars-container > .rc-scrollbars-view > div > h3 {
  display: none;
}

main > div > .rc-scrollbars-container > .rc-scrollbars-view > div > .rcx-grid__wrapper > .rcx-grid {
  display: none;
} 

#sidebar-region > nav > div > div > .rcx-button-group > button:last-child {
  display: none;
}

自訂腳本讓所有未登入的使用者在登入時都會執行。例如. (無論何時登入頁面)

//Add your script
jQuery(function(){
  $("form").next().hide();
  $("form > footer > p").hide();
  $(".rcx-css-17mu816").hide();
  $("h1").next().hide();
});

登入介面翻譯(測試中)

/app/bundle/programs/server/assets/app/i18n

{"zh-TW": { "registration.component.form.emailOrUsername": "帳號" }, "zh-TW":{ "registration.component.form.emailPlaceholder": "" } }

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。