2016年05月04日

MattermostをDocker使わずにインストールする

Mattermostをちゃんと動かそうと思って、セットアップしてみる。
やり方は公式ページに書いてあるけど、CentOS7.2とPostgreSQL9.5.2の環境でインストールしてみる。

データベースのインストールと設定

PostgreSQLのリポジトリを設定。

yum install http://yum.postgresql.org/9.5/redhat/rhel-7.2-x86_64/pgdg-redhat95-9.5-2.noarch.rpm

PostgreSQLをインストール

yum install postgresql95-server postgresql95-contrib

初期設定を行う

/usr/pgsql-9.5/bin/postgresql95-setup initdb

自動起動設定と起動を行う。

systemctl enable postgresql-9.5.service
systemctl start postgresql-9.4.service

データベース作成とユーザー作成を行う。

sudo -i -u postgres
psql
postgres=# CREATE DATABASE mattermost;
postgres=# CREATE USER mmuser WITH PASSWORD 'mmuser_password';
postgres=# GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
postgres=# \q
exit

viで設定ファイルを開き、

vi /var/lib/pgsql/9.4/data/postgresql.conf

listen_addressesのコメントアウトを解除して、localhostを*に変更する。

listen_addresses = 'localhost'

続いて、viで設定ファイルを開き、

vi /var/lib/pgsql/9.5/data/pg_hba.conf

同じサーバーにMattermostやPostgreSQLを立てようとするなら、Peer認証をtrustに変えておく。あと、同一サーバーからアクセスるために127.0.0.1をmd5認証に変える。
Peer認証はUNIXのユーザー名と一致していないとログインできない。まぁ、セキュリティ考えたら一致させておいたほうが良いと思うが、テスト用なのでとりあえず。

# "local" is for Unix domain socket connections only
local   all             mmuser                                     trust
host   all             all              127.0.0.1/32                       md5

別サーバーに立てる時は、IPv4 local connectionsの所でホストのIPアドレスを記載する。

host    all             all             10.10.10.10/32            md5

サービスの再起動。

systemctl reload postgresql-9.5.service

うまく設定できたか確認をする。

psql --host=10.10.10.1 --dbname=mattermost --username=mmuser --password
mattermost=> \q

Mattermost Serverのインストールと設定

Mattermostをダウンロードする。

wget https://github.com/mattermost/platform/releases/download/v2.1.0/mattermost.tar.gz

ダウンロードしたファイルを/optに配置する。

tar -xvzf mattermost.tar.gz
mv mattermost /opt

ファイルの保存ディレクトリを作成して、権限を付与する。

mkdir -p /opt/mattermost/data
useradd -r mattermost -U
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost

/opt/mattermost/config/config.jsonをviで開き、以下を変更する。

  • "DriverName"の値の箇所をmysqlからpostgresに変更する
  • "DataSource"の箇所のを書き換える。
DriverName": "postgres"
"DataSource": "postgres://mmuser:password@127.0.0.1:5432/mattermost?sslmode=disable&connect_timeout=10",

無事起動すると下記のように8065のポートでlistenが始まるので、Ctrl-Cで終了させる。

Server is listening on :8065

systemdのサービスを作成する。

touch /etc/systemd/system/mattermost.service
vi /etc/systemd/system/mattermost.service

以下を記述する。

[Unit]
Description=Mattermost
After=syslog.target network.target postgresql-9.5.service

[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid

[Install]
WantedBy=multi-user.target

後はsystemdで再読み込みして、起動&自動起動設定。

systemctl daemon-reload
systemctl start mattermost.service
systemctl enable mattermost.service

http://<サーバーのIPアドレス>:8065/でアクセス。
Webサーバーとの連携は、また別の記事で。

参考


タグ:CentOS Mattermost
posted by MINE at 00:26 | Comment(0) | TrackBack(0) | サーバー技術 | このブログの読者になる | 更新情報をチェックする | edit
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック