DockerにrockerChatをインストールし、チャットルームを設定するための詳細な手順

DockerにrockerChatをインストールし、チャットルームを設定するための詳細な手順

包括的なドキュメント

githubアドレス

https://github.com/RocketChat/Rocket.Chat

docker-compose ドキュメント

https://docs.rocket.chat/installation/docker-containers/docker-compose

設定ファイル

docker-composeファイルを取得する

コマンドを入力してください

: curl -L https://raw.githubusercontent.com/RocketChat/Rocket.Chat/develop/docker-compose.yml -o docker-compose.yml を実行します。

ファイルの内容は

バージョン: '2'
サービス:
  ロケットチャット:
   画像: rocketchat/rocket.chat:latest
   コマンド: >
     バッシュ -c
       「i in `seq 1 30`; 実行
         ノードmain.js &&
         s=$$? && break || s=$$?;
         echo \"$$i 回試行しました。5 秒待機しています...\";
         睡眠5;
       完了しました。($$s を終了)"
   再起動: 停止しない限り
   ボリューム:
     - ./アップロード:/app/アップロード
   環境:
     -ポート=3000
     - ROOT_URL=http://localhost:3000
     - MONGO_URL=mongodb://mongo:27017/rocketchat
     - MONGO_OPLOG_URL=mongodb://mongo:27017/local
     - MAIL_URL=smtp://smtp.email
# - HTTP_PROXY=http://proxy.domain.com
# - HTTPS_PROXY=http://proxy.domain.com
   依存:
     - モンゴ
   ポート:
     - 3000:3000
   ラベル:
     - "traefik.backend=rocketchat"
     - "traefik.frontend.rule=ホスト: your.domain.tld"
  モンゴ:
   画像: mongo:4.0
   再起動: 停止しない限り
   ボリューム:
     - ./data/db:/data/db
     #- ./data/dump:/dump
   コマンド: mongod --smallfiles --oplogSize 128 --replSet rs0 --storageEngine=mmapv1
   ラベル:
     - "traefik.enable=false"
  # このコンテナのジョブは、レプリカ セットを初期化するコマンドを実行するだけです。
  # コマンドを実行して自分自身を削除します (実行を継続しません)
  mongo-init-レプリカ:
   画像: mongo:4.0
   コマンド: >
     バッシュ -c
       「i in `seq 1 30`; 実行
         mongo mongo/rocketchat --eval \"
           rs.initiate({
             _id: 'rs0',
             メンバー: [ { _id: 0, ホスト: 'localhost:27017' } ]})\" &&
         s=$$? && break || s=$$?;
         echo \"$$i 回試行しました。5 秒待機しています...\";
         睡眠5;
       完了しました。($$s を終了)"
   依存:
     - モンゴ
  # 人気のチャットボット hubot (このイメージを開始する前に、まずボット ユーザーを追加し、パスワードを変更してください)
  ヒューボット:
   画像: rocketchat/hubot-rocketchat:latest
   再起動: 停止しない限り
   環境:
     - ROCKETCHAT_URL=ロックチャット:3000
     - ROCKETCHAT_ROOM=一般
     -ROCKETCHAT_USER=ボット
     -ROCKETCHAT_PASSWORD=ボットパスワード
     - BOT_NAME=ボット
  # ここに好きなだけスクリプトを追加できます。npm でインストールできる必要があります。
     - EXTERNAL_SCRIPTS=hubot-help、hubot-seen、hubot-links、hubot-diagnostics
   依存:
     - ロケットチャット
   ラベル:
     - "traefik.enable=false"
   ボリューム:
     - ./scripts:/home/hubot/scripts
  # これは、ポート 3001 上のホストの通知用に hubot ポートを公開するために使用されます (例: hubot-jenkins-notifier)
   ポート:
     - 3001:8080
  #traefik:
  # 画像: traefik:latest
  # 再起動: 停止しない限り
  # コマンド: >
  # トラエフィク
  # --docker
  # --acme=true
  # --acme.domains='your.domain.tld'
  # --acme.email='[email protected]'
  # --acme.entrypoint=https
  # --acme.storagefile=acme.json
  # --defaultentrypoints=http
  # --defaultentrypoints=https
  # --entryPoints='名前:http アドレス::80 リダイレクトエントリポイント:https'
  # --entryPoints='名前:https アドレス::443 TLS.証明書:'
  ポート数:
  # - 80:80
  # - 443:443
  # ボリューム:
  # - /var/run/docker.sock:/var/run/docker.sock

ファイルを変更する

ナノ docker-compose.yml

ポートをカスタムポートに変更します。デフォルトは3000ですが、ここでは5001に変更します。

画像

サービスを開始する

コマンドを入力してください

docker-compose を起動 -d

アクセスサービス

http://IP:ポートを使用する

デフォルトでインストールウィザードに入る

管理者情報を設定する

画像

組織情報を設定する

画像

サーバー情報を設定する

画像

サーバーを登録

画像

成功のための準備

画像

デフォルトの公開チャットルームに入る

画像

左上隅をクリックしてユーザーを作成します

2人のユーザー間の接続をテストするには

画像

テキスト、絵文字、画像、音声、ビデオ、ビデオ会議をテストする

画像

httpsの設定

SSL 証明書を申請し、nginx プロキシの前に IP: ポート番号を使用します。

同時に、ドメイン名は対応するサーバーのIPに解決されます。

サーバー{
       聞く 443;
       # ロケットチャット
       サーバー名 rocketchat.domain.com;
       sslオン;
       #ルートhtml;
       # インデックス index.html index.htm;
       # SSL 証明書は、同じレベルのドメイン フォルダーに配置されます ssl_certificate cert/domain/rocketchat.domain.com_bundle.crt;
       ssl_certificate_key cert/domain/rocketchat.domain.com.key;
       ssl_session_timeout 5分;
       ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
       ssl_プロトコル TLSv1 TLSv1.1 TLSv1.2;
       ssl_prefer_server_ciphers をオン;
       位置 / {
           #現在のサービス ポートをポイントします proxy_pass http://127.0.0.1:5001;
           # リクエスト ヘッダーを設定し、ヘッダー情報をサーバーに渡します proxy_redirect off;
           proxy_set_header ホスト $host;
           プロキシ_http_バージョン 1.1;
           proxy_set_header アップグレード $http_upgrade;
           proxy_set_header 接続「アップグレード」;
       }
   }

ヒント

音声メッセージ、ビデオメッセージ、ファイル転送、APP アプリケーションなどの一部のサービスでは、https プロトコル アクセスが必要です。

Https を時間内に構成することをお勧めします。試してみたいだけの場合は、ip:port を使用してください。

画像

上記は、dockerにrockerChatをインストールしてチャットルームを設定する方法の詳細です。docker rockerChatチャットルームの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

<<:  CSS でテキストシャドウと要素シャドウ効果を使用する

>>:  MySQL タイムブラインドインジェクションの 5 つの遅延方法

推薦する

jsシミュレーションでJingdongの詳細ページで画像を拡大する効果を実現

この記事では、Jingdongの詳細ページの画像の拡大を実現するためのjsの具体的なコードを紹介しま...

JS Canvas インターフェースとアニメーション効果

目次概要Canvas API: グラフィックスの描画パス線種矩形アーク文章グラデーションと画像の塗り...

CentOS 7.x のマスターおよびスレーブ DNS サーバーの展開

1. 準備例: 2 台のマシン: 192.168.219.146 (マスター)、192.168.21...

MySQL コピーテーブルと許可分析の 3 つの実装方法

テーブルを素早くコピーする方法まず、テーブル db1.t を作成し、1000 行のデータを挿入します...

HTML で #include ファイルを使用する例

a.htmとb.htmの2つのファイルがあります。同じディレクトリ内のa.htmの内容は次のとおりで...

JavaScript 手ぶれ補正のケーススタディ

原理手ぶれ補正の原理は、イベントをトリガーすることはできますが、イベントがトリガーされてから n 秒...

webpackでCSSを分割・圧縮し、リンクでインポートする手順

まずコードファイルの構造を見てみましょう。エントリファイル (index1.js) の内容: ...

Lua モジュールを使用して WAF を実装する Nginx の原理の分析

目次1. WAFの背景2. WAFとは3. 動作原理4. WAF機能5. WAFと従来のファイアウォ...

CSSを使用してダークモードとブライトモードを切り替える

Web Skills第5号では、CSSでダークモードやハイライトモードを実装するための技術的なソリュ...

MySQL Community Server 5.6.39 のインストール方法

この記事では、MySQLのダウンロードとインストールの詳細なチュートリアルを記載しています。具体的な...

JavaScript はマウスのドラッグを実装して div のサイズを調整します

この記事では、マウスをドラッグしてdivのサイズを調整するJavaScriptの具体的なコードを参考...

CSSは親コンテナのdivをimg画像で埋め、コンテナのサイズに適応します。

ページに複数の画像を導入すると、画像のサイズがばらつくことがあります。しかし、それらを一貫したサイズ...

MySQL UNION演算子の基本知識ポイント

MySQL UNION 演算子このチュートリアルでは、MySQL UNION 演算子の構文と例を紹介...

SQL文のパフォーマンスを分析するための標準的な要約

この記事では、explain を使用して SQL ステートメントを分析する方法を紹介します。実際、イ...

MySQL ページングパフォーマンスの調査

一般的なページング方法: 1. エスカレーター方式エスカレーター方式では通常、前のページ/次のページ...