サーバーを契約する

今回さくらVPSを契約してSlackのオープンソース版(OSS)のMattermostサーバーを構築していきます。

さくらVPSのご契約はこちら

 

チャットでのファイル送信など考慮して、50GBプランを選択。

 

サーバーが設置されている場所は、一番低価格な石狩を選択。

 

念のため初期費用が1,000円プラスされますが、ストレージを100GBに変更。

 

会員登録やカード情報など登録すると、すぐに2週間の無料期間がスタートし利用することができます。

 

サーバーの管理画面でOSをインストールする

ログインしたら、「契約情報」タブを開き、「契約サービスの確認」をクリックします。

契約中のサービスが表示されたら、「サーバー設定」をクリックします。

 

VPS管理画面が表示されますので、「各種設定」から「OSインストール」を行います。

 

インストールするOS「CentOS8」を選択し、管理者のパスワードを入力し画面下部の「設定内容を確認する」をクリックします。

 

インストールの実行確認ウィンドウが表示されますので、「インストールを実行する」をクリックします。

 

ステータスが「稼働中」になれば、インストール完了です。

この後、サーバーへ必要なソフトなどインストールする必要がありますので、サーバーURLを控えておいてください。

 

telnetでサーバーにログインする。

いろいろなtelnetクライアントがあるかと思いますが、個人的にはTeraTermを昔から利用してますのでおすすめです。

TeraTermのダウンロードはこちら

 

TeraTermをインストールし起動したら、サーバーURLを設定しOKをクリックします。

 

セキュリティ警告が表示されたら、「続行」をクリックします。

 

ユーザ名に「root」と入力し、OSインストール時に設定したパスワードをパスフレーズに入力しOKをクリックします。

 

下のようなコマンド入力画面が表示されたら、サーバーへのログイン完了です。

 

Mattermostの環境を作成する。

TeraTermを利用している場合は、コマンドをコピーした後に、TeraTermのコマンドラインを右クリックすると貼り付けすることができます。

1.OSを更新する

まずCentOS8をインストールしただけですので、アップデートを適用します。

dnf update

途中 「Total download size: 〇〇〇 M Is this ok [y/N]: 」などと、表示されたら「y」を入力しEnterを押します。

 

2.MariaDBをインストールと設定

データベース「MariaDB」を以下のコマンドでインストールします。

dnf install mariadb-server -y

インストールが完了したら、サービスを起動します。

systemctl start mariadb

サーバーが再起動しても、自動でサービスが起動するようにします。

systemctl enable mariadb

 

MariaDBへの管理者ログインパスワードが未設定ですので、パスワードを設定します。

mysql_secure_installation

コマンドラインにメッセージが表示されますので、下記のように入力していきます。

Enter current password for root (enter for none): ←現在のパスワードなので空欄でEnter

Set root password? [Y/n] ←YでEnter

New password: ←パスワードを入力

Re-enter new password: ←パスワード確認入力

 

rootユーザーでMariaDBにログインします。

mysql -u root -p

上記で設定したパスワードの入力を求められるので、パスワード入力しEnterを押します。

MariaDBにログインすると、下記のような画面になります。

 

Mattermostのデータベースを作成します。

CREATE DATABASE mattermostdb;

作成したデータベースにユーザーを作成します。

GRANT ALL PRIVILEGES ON mattermostdb.* TO mattermost@localhost IDENTIFIED BY '【パスワードを設定】';

作成したユーザーを有効にします。

FLUSH PRIVILEGES;

MariaDBからログアウトします。

EXIT;

 

3.Mattermostをインストールします。

サーバー上でMattermostを実行するユーザーを作成します。

useradd -d /opt/mattermost -U -M mattermost

ダウンロードコマンドをインストールします。

dnf install wget

 

最新バージョンのMattermostをダウンロードします。

wget https://releases.mattermost.com/5.22.2/mattermost-5.22.2-linux-amd64.tar.gz

最新バージョンはこちらから確認できます。

 

ダウンロードしたファイルを解凍します。

tar -xvzf mattermost-5.22.2-linux-amd64.tar.gz

解凍したフォルダをoptフォルダへ移動します。

mv mattermost /opt/

ダウンロードしたファイルは必要無いので削除します。

rm mattermost-5.21.0-linux-amd64.tar.gz

Mattermostフォルダにdataフォルダを作成します。

mkdir /opt/mattermost/data

Mattermostフォルダに所有ユーザーと権限を設定します。

chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost

 

コマンドラインで使えるテキストエディタをインストールします。

dnf install nano

 

Mattermostの設定ファイルを開きます。

nano /opt/mattermost/config/config.json

設定ファイル内のSqlSettingsのDataSource部分を修正しCtrl+Xで終了時に保存して終了します。

  "SqlSettings": {
    "DriverName": "mysql",
    "DataSource": "mattermost:【設定したパスワード】@tcp(localhost:3306)/mattermostdb?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
    "DataSourceReplicas": [],
    "DataSourceSearchReplicas": [],
    "MaxIdleConns": 20,
    "ConnMaxLifetimeMilliseconds": 3600000,
    "MaxOpenConns": 300,
    "Trace": false,
    "AtRestEncryptKey": "",
    "QueryTimeout": 30
  },

 

Mattermostを自動起動するサービスファイルを作成する。

nano /etc/systemd/system/mattermost.service

空のファイルが作成されるので、下記をコピーし右クリックで張り付け、Ctrl+Xで保存終了する。

[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service

[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/run/mattermost.pid
TimeoutStartSec=3600
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

 

作成したサービスファイルを読み込ませます。

systemctl daemon-reload

 

Mattermostサービスを起動します。

systemctl start mattermost

 

Mattermostサービスを再起動時でも自動起動するようにします。

systemctl enable mattermost

 

4.WEBサーバーをインストールする。

Nginx Webサーバーをインストールします。

dnf install nginx -y

 

Nginxを起動し、OS再起動でもサービスを自動起動するようにします。

systemctl start nginx
systemctl enable nginx

 

Nginx サービスを再起動します。

systemctl restart nginx

 

5.ファイヤーウォールを設定します。

SELinuxを無効にするために設定ファイルを開きます。

nano /etc/selinux/config

開いたら「SELINUX =disabled 」の部分を、下記のように修正します。

SELINUX = permissive

ファイヤーウォールを起動し、OS再起動時に自動起動するように設定します。

systemctl start firewalld
systemctl enable firewalld

ファイヤーウォールにMattermostのポート開放を追加します。

firewall-cmd --zone=public --add-port=8065/tcp --permanent

ファイヤーウォールを再起動します。

firewall-cmd --reload

 

さくらVPSサーバー管理画面から、パケットフィルタをクリックします。

 

パケットフィルタ設定を開きます。

 

Mattermostのポート番号8065を追加します。

 

ブラウザでMattermostを表示する。

サーバーURL末尾に「:8065」を追加してブラウザURLを入力します。

例:http://〇〇〇〇〇.vs.sakura.ne.jp:8065/

 

最初にアカウントを作成する画面が表示されます。

初期設定時には、パスワードは10文字以上の大小英数と記号を含む必要があります。

 

次にチャットグループを作成します。

チャットグループ名を入力します。

今回は「test」と入力しましたが、後で変更も可能です。

 

グループのURLが表示されますので、確認してFinishをクリックします。

 

Mattermostを日本語化する

 

メニューをクリックし、System Console(システムコンソール)を開きます。

 

システムコンソールのLocalization(ローカリゼーション)を開き、各種言語設定を行います。

 

次にチャットグループに戻り、Account Setting(アカウントセッティング)を開きます。

 

Display(ディスプレイ)の項目を開き、LanguageのEditを開きます。

 

アカウントの言語設定を変更し、保存して終了します。(Saveをクリック)

 

 

 

 

By にど寝

もともと名古屋でシステムエンジニアをしてましたが、現在は地元に帰省してネットショップの社内システムエンジニアをしてます。  

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です