このチュートリアルでは、CentOS 7サーバーにMattermostをインストールして構成する方法を説明します。知らない人のために、Mattermostはオープンソースのプライベートクラウドです。 Slackの代替手段。MITライセンスの下でリリースされた、Web、PC、および電話用の職場メッセージングシステム。
独自のSaaSメッセージングの代わりに、Mattermostはチームのすべてのコミュニケーションを1か所にまとめ、どこからでも検索してアクセスできるようにします。Mattermostは「Slack互換であり、Slack制限ではありません」であり、既存のSlack統合との互換性を含む、Slackの着信および発信Webhook統合のスーパーセット。既存のSlackチームから、ユーザー、パブリックチャネルの履歴、さらにはテーマ設定の色をMattermostにインポートできます。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、' sudo
を追加する必要があります。 ルート権限を取得するコマンドに‘。 CentOS7サーバーへのMattermostのインストールを段階的に説明します。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:CentOS7。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
- サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)
非rootsudoユーザー
またはrootユーザー
へのアクセス 。非rootsudoユーザー
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
CentOS7にMattermostをインストールする
ステップ1.まず、システムが最新であることを確認することから始めましょう。
yum clean all yum -y update
ステップ2.MySQLデータベースをインストールします。
Mattermostサーバーで使用するデータベースをインストールしてセットアップします。次のコマンドを使用してMySQLをインストールできます:
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm yum localinstall mysql57-community-release-el7-9.noarch.rpm
次に、MySQLをインストールします:
sudo yum install mysql-community-server
MySQLサーバーを起動します:
systemctl start mysqld.service chkconfig mysqld on
デフォルトでは、MySQLは強化されていません。 mysql_secure_installation
を使用してMySQLを保護できます。 脚本。ルートパスワードを設定し、匿名ユーザーを削除し、リモートルートログインを禁止し、テストデータベースと安全なMySQLへのアクセスを削除する各手順を注意深く読んでください。
mysql_secure_installation
次のように構成します:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
次に、MySQLコンソールにログインして、Mattermostのデータベースを作成する必要があります。次のコマンドを実行します。
mysql -u root -p
これによりパスワードの入力を求められるので、MariaDBルートパスワードを入力してEnterキーを押します。データベースサーバーにログインしたら、次のデータベースを作成する必要があります。最も重要なインストール:
mysql> CREATE USER 'mmuser'@'localhost' IDENTIFIED BY 'mmuser_strong_password'; mysql> CREATE DATABASE mattermostdb; mysql> GRANT ALL PRIVILEGES ON mattermostdb.* TO 'mmuser'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> EXIT;
ステップ3.MattermostServerをインストールします。
最初に行うことは、Mattermostのダウンロードページに移動し、Mattermostの最新の安定バージョンをダウンロードすることです。この記事を書いている時点では、バージョン3.6.2です。 :
wget https://releases.mattermost.com/3.6.2/mattermost-3.6.2-linux-amd64.tar.gz
Mattermostアーカイブをサーバーのドキュメントルートディレクトリに解凍します:
tar xf *.gz mv mattermost /opt/
ファイルのストレージディレクトリを作成します:
mkdir /opt/mattermost/data
このサービスを実行するMattermostというシステムユーザーとグループを設定し、所有権と権限を設定します:
useradd --system --user-group mattermost chown -R mattermost:mattermost /opt/mattermost chmod -R g+w /opt/mattermost
/opt/mattermost/config/config.json
を使用してデータベースドライバーを設定します ファイル。その中で、「DriverName」と「DataSource」の行を検索し、次のように変更します。
"DriverName": "mysql" "DataSource": "mmuser:@tcp(localhost:3306)/mattermost?charset=utf8"
次のコマンドを使用して、Mattermostサーバーを保存、終了、およびテストします。
sudo -u mattermost /opt/mattermost/bin/platform
サーバーが起動すると、ログ情報が表示され、サーバーは8065でリッスンしているというテキストが表示されます。ターミナルウィンドウでCTRL+Cを押すとサーバーを停止できます。
ステップ4. systemd
を作成します Mattermostの単位。
systemd
を作成します Mattermostのファイル、 /etc/systemd/system/mattermost.service
そして、その中に、次の構成を貼り付けます。
[Unit] Description=Mattermost After=syslog.target network.target postgresql-9.4.service [Service] Type=simple WorkingDirectory=/opt/mattermost/bin User=mattermost ExecStart=/opt/mattermost/bin/platform PIDFile=/var/spool/mattermost/pid/master.pid LimitNOFILE=49152 [Install] WantedBy=multi-user.target
サービスを実行可能にします:
chmod 664 /etc/systemd/system/mattermost.service
そしてサービスをリロードします:
systemctl daemon-reload
Mattermostサービスを有効にする:
chkconfig mattermost on
そして systemd
で開始します :
systemctl start mattermost
ステップ5.NGINXのインストールと構成。
本番システムでは、Mattermostサーバーの前にプロキシサーバーを使用します。この場合はNGINXです。これを行う主な利点は次のとおりです。
- SSLターミネーション
- ポートマッピング:80から8065
- HTTPからHTTPSへのリダイレクト
- 標準のリクエストログ
CentOS 7にNGINXをインストールするには、yumリポジトリファイル /etc/yum.repos.d/nginx.repo
を作成します。 、次の内容で:
[nginx] name=nginx repo baseurl=http://nginx.org/packages/rhel/7.1/$basearch/ gpgcheck=0 enabled=1
yum
を使用してNginxをインストールします コマンド:
yum install nginx.x86_64
インストールが完了したら、NGINXを起動します:
systemctl start nginx systemctl enable nginx
構成Nginx。
NGINXをプロキシサーバーとして構成するには、ファイル / etc / nginx / sites-available / mattermost
を作成します および過去:
upstream backend { server localhost:8065; } proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; server { listen 80; server_name mattermost.mydomain.com; location /api/v3/users/websocket { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; client_max_body_size 50M; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_pass http://backend; } location / { client_max_body_size 50M; proxy_set_header Connection ""; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_pass http://backend; } }
既存のデフォルトのサイト対応ファイルを削除します:
rm /etc/nginx/sites-enabled/default
Mattermost構成を有効にする:
ln -s /etc/nginx/sites-available/mattermost /etc/nginx/sites-enabled/mattermost
最後に、Nginxサービスを再起動します:
systemctl restart nginx
ステップ7.Mattermostへのアクセス。
MattermostはデフォルトでHTTPポート80で利用できます。お気に入りのブラウザを開いてhttp://mattermost.mydomain.com/
> メールアドレスを入力してアカウントを作成し、引き続きMattermostを設定します。ファイアウォールを使用している場合は、ポート80を開いて、コントロールパネルにアクセスできるようにしてください。
おめでとうございます。Mattermostが正常にインストールされました。CentOS7システムにMattermostをインストールするためにこのチュートリアルを使用していただき、ありがとうございます。追加のヘルプや役立つ情報については、Mattermostの公式Webサイトを確認することをお勧めします。