ウェブサイト検索

CentOS および Debian ベースのシステムに Let's Chat をインストールする方法


Let’s Chat は、比較的小規模なチーム向けに設計された、無料のオープンソースの自己ホスト型チャット アプリケーションです。機能が豊富です。 Node.js を使用して構築され、MongoDB を使用してアプリケーション データを保存します。

チャットしましょうの機能:

  • 永続的なメッセージをサポート
  • 複数の部屋をサポート
  • ローカル/Kerberos/LDAP認証をサポート
  • REST のような API が付属しています
  • プライベートルームとパスワードで保護されたルームをサポート
  • 新しいメッセージのアラート/通知のサポートを提供します
  • メンションもサポートします (Hey @tecmint/@all)
  • 画像埋め込み/Giphy検索のサポートを提供します
  • コードの貼り付けが可能
  • ファイルアップロードのサポート (ローカルまたは Amazon S3 または Azure から)
  • XMPP マルチユーザー チャット (MUC) や XMPP ユーザー間の 1 対 1 チャットなどもサポートします。

重要なのは、以下のすべての要件を満たすシステムに簡単に導入できるように設計されているということです。

要件

  • Node.js (0.11+)
  • MongoDB (2.6+)
  • Python (2.7.x)

この記事では、小規模チーム向けの Let's Chat メッセージング アプリケーションを CentOS および Debian ベースのシステムにインストールして使用する方法を説明します。

ステップ 1: システムを更新する

1. まず、次のように必要なパッケージをインストールして、システム全体のアップデートを実行してください。

-------------- On CentOS/RHEL/Fedora -------------- 
sudo yum update && sudo yum upgrade

-------------- On Debian/Ubuntu -------------- 
sudo apt-get update && sudo apt-get -y upgrade
sudo apt-get install software-properties-common git build-essential

2. システムのアップデートが完了したら、サーバーを再起動します (オプション)。

sudo reboot

ステップ 2: Node.js のインストール

3. 図に示すように、nodesource リポジトリを使用して、NodeJS の最新バージョン (つまり、この記事の執筆時点ではバージョン 7.x) をインストールします。

-------------- On CentOS/RHEL/Fedora --------------
curl -sL https://rpm.nodesource.com/setup_7.x | sudo -E bash - 
sudo yum install nodejs

-------------- On Debian/Ubuntu -------------- 
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt install nodejs 

ステップ 3: MongoDB サーバーのインストール

4. 次に、MongoDB コミュニティ バージョンをインストールする必要がありますが、YUM リポジトリでは利用できません。したがって、以下で説明するように MongoDB リポジトリを有効にする必要があります。

CentOS/RHEL/Fedora の場合

cat <<EOF | sudo tee -a /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
EOF

次に、MongoDB サーバーの最新バージョン (つまり 3.4) をインストールして起動します。

sudo yum install mongodb-org
sudo systemctl start mongod.service
sudo systemctl enable mongod.service

Debian/Ubuntu の場合

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo 'deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse' | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
sudo apt-get update
sudo apt-get install -y mongodb-org
sudo systemctl start mongod.service
sudo systemctl enable mongod.service

ステップ 4: Let’s Chat サーバーをインストールする

5. まず、git をインストールして Let's Chat リポジトリのクローンを作成し、図に示すように依存関係をインストールします。

sudo yum install git		##RHEL/CentOS
sudo apt install git		##Debian/Ubuntu

cd /srv
sudo git clone https://github.com/sdelements/lets-chat.git 
cd lets-chat
sudo npm install

: インストール中の上記の出力からの npm WARN 信号は正常です。無視してください。

6. インストールが完了したら、サンプル ファイルからアプリケーション構成ファイル (/srv/lets-chat/settings.yml) を作成し、その中でカスタム設定を定義します。

sudo cp settings.yml.sample settings.yml

サンプル設定ファイルから提供されるデフォルト設定を使用します。

7. 最後に、Let's Chat サーバーを起動します。

npm start 

Let's Chat デーモンを実行し続けるには、Ctrl-C を押して終了し、システム起動時に有効にする Systemd ユニット ファイルを作成します。

ステップ 5: Let's Chat スタートアップ ファイルを作成する

8. Let's Chat 用の systemd ユニット ファイルを作成します。

sudo vi /etc/systemd/system/letschat.service

以下のユニット構成をコピーしてファイルに貼り付けます。

[Unit]
Description=Let's Chat Server
Wants=mongodb.service
After=network.target mongodb.service

[Service]
Type=simple
WorkingDirectory=/srv/lets-chat
ExecStart=/usr/bin/npm start
User=root
Group=root
Restart=always
RestartSec=9

[Install]
WantedBy=multi-user.target

9. ここで、とりあえずサービスを開始し、システム起動時に自動的に開始されるようにします。

sudo systemctl start letschat
sudo systemctl enable letschat
sudo systemctl status letschat

ステップ 6: Let's Chat Web インターフェイスにアクセスする

10. すべての準備が完了したら、次の URL から Let's Chat Web インターフェースにアクセスできます。

https://SERVER_IP:5000
OR
https://localhost:5000

11. [アカウントが必要 ] をクリックしてアカウントを作成し、必要な情報を入力して [登録 ] をクリックします。

次の関連記事もお勧めします。

  1. Linux でコマンドライン チャット サーバーを作成するための便利なコマンド
  2. Linux の「Openfire」を使用して独自のインスタント メッセージング/チャット サーバーを作成する

Let's Chat Github リポジトリ: https://github.com/sdelements/lets-chat

楽しむ!これで、Let's Chat アプリケーションがシステムにインストールされました。ご意見がございましたら、以下のフィードバック フォームをご利用ください。