概要 †
- CentOs 7にRocket.Chatをインストールしてチャットサーバーにする
手順 †
CentOSの環境構築 †
- CentOSをインストールする。今回はCentOS-7-x86_64-Minimal-1810.isoを使用
- バージョンを確認
$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
- IPアドレスを手動割り当て
$ nmtui
- 再起動
$ reboot
IPアドレスの確認 †
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:ce:ca:d8 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.222/24 brd 192.168.1.255 scope global noprefixroute enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fece:cad8/64 scope link
valid_lft forever preferred_lft forever
依存パッケージ等の環境構築 †
- 基本的には公式サイトの「Rocket.Chat in CentOS」に従ってインストールを進める
- エンタープライズ Linux 用の拡張パッケージEPEL(Extra Packages for Enterprise Linux)のリポジトリをインストール
# yum -y install epel-release
- アップデート
# yum clean all; yum -y update
- MongoDBのリポジトリファイルを作成
$ echo -e "[mongodb-org-3.6]\nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.6/x86_64/\ngpgcheck=1\nenabled=1\ngpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc" | sudo tee /etc/yum.repos.d/mongodb-org-3.6.repo
- node.jsの設定
$ sudo yum install -y curl && curl -sL https://rpm.nodesource.com/setup_8.x | sudo bash -
- ビルドツール(gcc)、MongoDB、node.js、graphicsmagickなどをインストール
$ sudo yum install -y gcc-c++ make mongodb-org nodejs
$ sudo yum install -y epel-release && sudo yum install -y GraphicsMagick
- Node.jsの推奨バージョンをインストール
$ sudo npm install -g inherits n && sudo n 8.11.3
Rocket.Chatのインストール †
- 最新のRocket.Chatをダウンロード
$ curl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgz
- /tmpに解凍
$ tar -xzf /tmp/rocket.chat.tgz -C /tmp
- インストール
$ cd /tmp/bundle/programs/server && npm install
- フォルダ名変更
$ sudo mv /tmp/bundle /opt/Rocket.Chat
Rocket.Chatの設定 †
- ユーザー作成
$ sudo useradd -M rocketchat && sudo usermod -L rocketchat
- パーミッション変更
$ sudo chown -R rocketchat:rocketchat /opt/Rocket.Chat
- 設定ファイル作成
$ echo -e "[Unit]\nDescription=The Rocket.Chat server\nAfter=network.target remote-fs.target nss-lookup.target nginx.target mongod.target\n[Service]\nExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js\nStandardOutput=syslog\nStandardError=syslog\nSyslogIdentifier=rocketchat\nUser=rocketchat\nEnvironment=LD_PRELOAD=/opt/Rocket.Chat/programs/server/npm/node_modules/sharp/vendor/lib/libz.so NODE_ENV=production MONGO_URL=mongodb://localhost:27017/rocketchat ROOT_URL=http://your-host-name.com-as-accessed-from-internet:3000/ PORT=3000\n[Install]\nWantedBy=multi-user.target" | sudo tee /usr/lib/systemd/system/rocketchat.service
- 設定ファイルを編集
$ sudo vi /usr/lib/systemd/system/rocketchat.service
MONGO_URL=mongodb://localhost:27017/rocketchat
ROOT_URL=http:192.168.1.222:3000
PORT=3000
- MongoDBとRocket.Chatのサービスを開始
$ sudo systemctl enable mongod && sudo systemctl start mongod
$ sudo systemctl enable rocketchat && sudo systemctl start rocketchat
Created symlink from /etc/systemd/system/multi-user.target.wants/rocketchat.service to /usr/lib/systemd/system/rocketchat.service.
ファイアウォールの設定 †
- TCPの3000番を開ける
$ sudo firewall-cmd --permanent --add-port=3000/tcp
$ sudo systemctl reload firewalld
Rocket.Chatへのアクセス †
- ブラウザでアクセスする
http://192.168.1.222:3000
補足 †
参考 †
CentOS Rocket.Chat ロケットチャット インストール 環境構築
Total:11820 / Today:4 / Yesterday:8