From 72c0b70b4e4c3c42d16c9a1a47cae0d6727d079b Mon Sep 17 00:00:00 2001 From: emreKirman Date: Tue, 26 Aug 2025 02:12:33 -0500 Subject: [PATCH] =?UTF-8?q?rocket=20chat=20d=C3=BCzenlendi.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rocket-chat/rocketchat.yml | 44 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 2 deletions(-) diff --git a/rocket-chat/rocketchat.yml b/rocket-chat/rocketchat.yml index 7f95e06..3220ee5 100644 --- a/rocket-chat/rocketchat.yml +++ b/rocket-chat/rocketchat.yml @@ -1,14 +1,51 @@ version: "3.8" services: + + ### MongoDB (single-node replica set + oplog) + mongo: + image: mongo:6 + command: ["--replSet","rs0","--oplogSize","128"] + volumes: + - mongo_data:/data/db + networks: + - rocketchat-net + healthcheck: + test: ["CMD","mongosh","--quiet","--eval","db.adminCommand('ping').ok"] + interval: 10s + timeout: 5s + retries: 10 + deploy: + placement: + constraints: + - node.labels.platform == prod # İstersen kaldırabilirsin + + ### ReplSet init (tek seferlik) + mongo-init-replica: + image: mongo:6 + networks: + - rocketchat-net + # rs.init zaten yapılmışsa hata vermesin diye OR'lu komut + command: > + bash -lc " + mongosh --host mongo:27017 --quiet --eval + 'try { rs.initiate({_id:\"rs0\", members:[{_id:0, host:\"mongo:27017\"}]}) } catch(e) { rs.status().ok }' + " + deploy: + restart_policy: + condition: none + placement: + constraints: + - node.labels.platform == prod + ### Rocket.Chat rocketchat: image: registry.rocket.chat/rocketchat/rocket.chat:latest environment: - PORT=3000 - ROOT_URL=https://chat.emrekirman.xyz # <- kendi domainini yaz - - MONGO_URL=mongodb://admin:emre98836@mongodb:27017/rocketchat?authSource=admin - - MONGO_OPLOG_URL=mongodb://admin:emre98836@mongodb:27017/rocketchatlog?authSource=admin + - MONGO_URL=mongodb://mongo:27017/rocketchat?replicaSet=rs0 + - MONGO_OPLOG_URL=mongodb://mongo:27017/local?replicaSet=rs0 - REDIS_URL=redis://:98836@redis:6379 # İsteğe bağlı: Türkçe varsayılan dil - OVERWRITE_SETTING_Language=tr @@ -18,6 +55,7 @@ services: - mongodb_backend-net - traefik-public - redis_redis_net + - rocketchat-net deploy: replicas: 2 # Traefik sticky cookie ile çoklayabiliyoruz update_config: @@ -49,6 +87,8 @@ networks: external: true redis_redis_net: external: true + rocketchat-net: + driver: overlay volumes: mongo_data: